Retour à la leçon
Mission

Mission : des rapports PDF qui ralentissent tout le monde, même après clustering

Choisir et implémenter le bon outil (cluster vs worker_threads) selon la nature du problème, puis corriger un anti-pattern de création de worker par requête.

Contexte

L'équipe a déjà mis en place cluster avec un worker process par cœur CPU pour améliorer le débit global. Pourtant, dès que deux utilisateurs génèrent un rapport PDF (calcul CPU-intensif de mise en page, environ 3 secondes) sur le MÊME worker process, toutes les autres requêtes traitées par CE worker précis ralentissent, alors que les autres workers du cluster restent parfaitement réactifs. Un développeur propose de résoudre ça en créant new Worker('./pdf-worker.js') à l'intérieur même du handler de route, à chaque requête POST /reports.