
Performance et Déploiement Cloud
Event loop, blocking I/O, profiling, memory leaks, query optimization, compression, clustering, worker threads, load balancing, caching stratégique (Redis + HTTP), AWS (ECS, Lambda), serverless, deployment strategies (blue/green, canary)
1Quelle approche optimise le déploiement de containers NestJS dans AWS ECS ?
Quelle approche optimise le déploiement de containers NestJS dans AWS ECS ?
Réponse
Pour optimiser le déploiement ECS de containers NestJS : utiliser des multi-stage Docker builds pour réduire la taille de l'image finale (build stage + production stage minimal), exploiter le layer caching Docker pour accélérer les builds, utiliser ECR (Elastic Container Registry) dans la même région pour réduire la latency, configurer health checks appropriés, utiliser Fargate pour simplifier la gestion, définir des resource limits (CPU/memory) optimaux, implémenter graceful shutdown pour les SIGTERM. Une image optimisée Node.js alpine peut être <100MB contre >1GB non optimisée.
2Quelles sont les phases principales de l'event loop Node.js ?
Quelles sont les phases principales de l'event loop Node.js ?
Réponse
L'event loop Node.js comporte six phases principales : timers (setTimeout/setInterval), pending callbacks (I/O callbacks différés), idle/prepare (interne), poll (récupération de nouveaux événements I/O), check (setImmediate), et close callbacks. Chaque phase possède une queue FIFO de callbacks à exécuter. La phase poll est la plus importante car elle traite les événements I/O.
3Quel est l'impact d'une opération bloquante (blocking I/O) dans Node.js ?
Quel est l'impact d'une opération bloquante (blocking I/O) dans Node.js ?
Réponse
Une opération bloquante dans Node.js bloque l'event loop entier, empêchant toutes les autres opérations d'être traitées. Cela dégrade considérablement les performances car Node.js est mono-thread. Les opérations synchrones comme fs.readFileSync, crypto.pbkdf2Sync, ou des boucles intensives bloquent le thread principal. Toujours utiliser les versions asynchrones ou déléguer à des worker threads.
Comment identifier un memory leak dans une application Node.js en production ?
Quel outil utiliser pour profiler les performances CPU d'une application NestJS ?
+27 questions d'entretien
Autres sujets d'entretien Node.js / NestJS
Fondamentaux Node.js
APIs Core Node.js
Programmation asynchrone
Bases Express.js
Fondamentaux NestJS
Conception d'API REST
Validation et DTO
Documentation d'API
Gestion des erreurs
Tests unitaires
Planification de tâches
Modules et DI NestJS
Configuration et environnements
Authentification JWT
Autorisation et RBAC
Base de données avec TypeORM
Prisma ORM
Middleware et Interceptors
Upload de fichiers
WebSockets
GraphQL avec NestJS
Tests end-to-end
Cache avec Redis
Files d'attente avec Bull
DevOps, Logging et CI/CD
Docker et Containerization
Microservices
Bonnes pratiques de sécurité
Maîtrise Node.js / NestJS pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement