Tech
Node.js en production : scalabilité, performance et résilience
Comprendre le runtime en profondeur pour construire des services qui restent rapides et disponibles sous charge réelle.
- Durée indicative
- 2 à 3 jours
- Niveau
- Intermédiaire
- Modalités
- Présentiel · Distanciel · Hybride
- Formats
- Intra-entreprise
- Inter-entreprises
- Bootcamp intensif
- Coaching / accompagnement
Bénéfices attendus pour vos équipes et votre activité
Ce que la formation change concrètement, au-delà de la salle :
-
Des services plus fiables
Les services sont conçus pour la charge et les pannes réelles, pas seulement pour le cas nominal.
-
Des coûts d'infrastructure maîtrisés
Comprendre où partent le temps et la mémoire évite de compenser les problèmes en ajoutant des serveurs.
-
Un diagnostic plus rapide
Le profiling et l'observabilité réduisent le temps entre une alerte et sa cause racine.
-
Une meilleure expérience utilisateur
Des temps de réponse plus bas et plus stables, ressentis directement par vos utilisateurs.
Objectifs pédagogiques
À l'issue de la formation, les participants seront capables de :
- Expliquer le fonctionnement réel de l'event loop, de libuv et du thread pool
- Identifier et corriger ce qui bloque l'event loop
- Choisir le bon outil de concurrence : I/O asynchrones, worker threads ou processus
- Appliquer les patterns de résilience : timeout, retry avec backoff, circuit breaker, bulkhead, rate limiting
- Utiliser le cache efficacement en évitant ses pièges classiques
- Exploiter des services Node.js de manière fiable en conteneur (signaux, arrêt gracieux, health checks)
Public
- Développeuses et développeurs backend et full-stack sur Node.js
- Tech leads et SRE qui exploitent des services Node.js
Prérequis
- Une expérience professionnelle de JavaScript ou TypeScript sur Node.js
- Des notions de HTTP et de Docker sont un plus
Programme
-
Module 1 Au cœur du runtime
- V8, libuv et les phases de l'event loop
- I/O bloquantes vs non bloquantes
- Microtâches, macrotâches et ordre d'exécution
- Le thread pool et ses limites
-
Module 2 Asynchrone et concurrence
- Callbacks, Promises et async/await, et leurs pièges
- Concurrence vs parallélisme
- Borner la concurrence et gérer la backpressure
- Gestion des ressources et annulation
-
Module 3 Performance
- Profiler le CPU et la mémoire
- Détecter la latence de l'event loop
- Worker threads pour le travail CPU-bound
- Stratégies de cache, invalidation et éviction
-
Module 4 Patterns de résilience
- Des timeouts partout
- Retry avec backoff exponentiel et jitter
- Circuit breaker et bulkhead
- Rate limiting et délestage de charge
-
Module 5 Exploitation en production
- Conteneurs, PID 1 et gestion des signaux
- Arrêt gracieux et health checks
- Configuration, logs et observabilité
- Une checklist de mise en production
Approche pédagogique
Environ 70 % de pratique. Les concepts sont démontrés en direct, puis explorés par des exercices : mesurer une event loop sous charge, casser volontairement un service puis le rendre résilient, profiler un vrai goulot d’étranglement. Les participants repartent avec les exercices, leurs corrigés, les supports et une checklist de mise en production.
Sur mesure
Avant la session, un court échange me permet de comprendre vos services, votre infrastructure et les problèmes que vous rencontrez en production. Les exercices peuvent alors cibler vos propres goulots d’étranglement et incidents. En format coaching, nous travaillons directement sur vos services pendant plusieurs semaines.
Parlons de votre besoin
Un programme à adapter, une équipe à former, une question sur un format ? Écrivez-moi pour en discuter.
Me contacterantoinecoulon.consulting@gmail.com