mediumSystem Design

Explain how clustering works in Node.js.

86 views
01

Understand the problem

This question assesses understanding of how Node.js leverages multi-core CPUs despite its single-threaded nature.

clusteringscalabilityconcurrencyperformance
02

Attempt it yourself

Sketch your approach before reading the solution — that's what interviews test.

Stuck? AI Nudge Available

Get a conceptual hint to guide your logic without spoiling the final implementation.

03

Study the solution

The solution is waiting

Give it an honest attempt first — then compare your thinking with the full walkthrough.

04

Read the code

Fork one worker per core
import cluster from 'node:cluster';
import { cpus } from 'node:os';
import http from 'node:http';

if (cluster.isPrimary) {
  for (let i = 0; i < cpus().length; i++) cluster.fork();
  cluster.on('exit', () => cluster.fork());      // restart on crash
} else {
  http.createServer((req, res) => res.end('hi from ' + process.pid))
      .listen(3000);                              // all share :3000
}
05

Join the discussion

Discussion (0)

Sign in to join the discussion.

No responses yet. Be the first to share what you think.