Performance: Middleware execution flow (req, res, next)
MEDIUM IMPACT
This affects server response time and how quickly the client receives the final page or data.
app.use(async (req, res, next) => { await someAsyncTask(); next(); }); app.use((req, res) => { res.send('Done'); });
app.use((req, res, next) => {
// heavy synchronous task
for(let i = 0; i < 1e8; i++) {}
next();
});
app.use((req, res) => {
res.send('Done');
});| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Blocking synchronous middleware | 0 (server-side) | 0 (server-side) | 0 (client-side) | [X] Bad |
| Asynchronous non-blocking middleware | 0 (server-side) | 0 (server-side) | 0 (client-side) | [OK] Good |