A. Using cluster.isMaster instead of cluster.isWorker
B. Missing code to restart worker on exit
C. Express app should be created in master process
D. app.listen should be outside else block
Solution
Step 1: Check cluster exit event handler
The exit event logs a message but does not fork a new worker.
Step 2: Understand impact on zero-downtime
Without restarting workers, the app loses capacity and may cause downtime.
Final Answer:
Missing code to restart worker on exit -> Option B
Quick Check:
Exit handler must fork new worker [OK]
Hint: Restart workers on exit to avoid downtime [OK]
Common Mistakes:
Not restarting workers after exit
Confusing master and worker roles
Placing app.listen in wrong process
5. You want to deploy a new version of your Express app without downtime. Which approach best achieves this?
1. Use cluster to run multiple workers
2. On update, fork new workers with new code
3. Gracefully disconnect old workers after new ones are ready
4. Restart the entire server process immediately
Which steps should you follow?
hard
A. Steps 1 and 4 only
B. Only step 4
C. Steps 1, 2, and 3
D. Steps 2 and 4 only
Solution
Step 1: Understand zero-downtime deployment best practices
Running multiple workers (step 1) allows traffic to continue during updates.
Step 2: Deploy new code by forking new workers (step 2) and gracefully disconnect old ones (step 3)
This ensures no requests are dropped and old workers finish their tasks.
Step 3: Avoid immediate server restart (step 4) as it causes downtime
Restarting the whole server stops all workers at once, causing downtime.
Final Answer:
Steps 1, 2, and 3 -> Option C
Quick Check:
Fork new workers and gracefully disconnect old [OK]
Hint: Fork new workers before disconnecting old ones [OK]
Common Mistakes:
Restarting server immediately causing downtime
Not gracefully disconnecting old workers
Skipping multiple worker setup
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.