Performance: Storing files on disk vs memory
MEDIUM IMPACT
This affects server response time and resource usage during file uploads and downloads.
const multer = require('multer'); const upload = multer({ dest: 'uploads/' }); app.post('/upload', upload.single('file'), (req, res) => { // File saved on disk automatically res.send('File saved on disk'); });
app.post('/upload', (req, res) => { let fileData = []; req.on('data', chunk => fileData.push(chunk)); req.on('end', () => { const fileBuffer = Buffer.concat(fileData); // Process file in memory res.send('File received in memory'); }); });
| Pattern | Memory Usage | CPU Load | Response Time Impact | Verdict |
|---|---|---|---|---|
| Store files in memory | High (depends on file size) | High (buffering large files) | Can block event loop causing slow response | [X] Bad |
| Store files on disk with streaming | Low (buffers small chunks) | Moderate (I/O overhead) | More stable response times for large files | [OK] Good |