Performance: Master and worker processes
HIGH IMPACT
This concept affects how Node.js handles CPU-intensive tasks and concurrent requests, impacting server responsiveness and throughput.
const cluster = require('cluster'); const http = require('http'); const numCPUs = require('os').cpus().length; if (cluster.isMaster) { for (let i = 0; i < numCPUs; i++) { cluster.fork(); } } else { http.createServer((req, res) => { // Worker handles request without blocking master let count = 0; for (let i = 0; i < 1e9; i++) count += i; res.end('Done ' + count); }).listen(3000); }
const http = require('http'); http.createServer((req, res) => { // Heavy computation blocking event loop let count = 0; for (let i = 0; i < 1e9; i++) count += i; res.end('Done ' + count); }).listen(3000);
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Single process heavy CPU task | N/A | N/A | N/A | [X] Bad |
| Master with multiple worker processes | N/A | N/A | N/A | [OK] Good |