
Microservices
Monolith vs modular monolith vs microservices, message patterns, transporters (TCP, Redis, NATS, RabbitMQ, Kafka), communication (sync/async, event-driven), CQRS, event sourcing, client/server
1Qu'est-ce qu'un monolithe modulaire (modular monolith) ?
Qu'est-ce qu'un monolithe modulaire (modular monolith) ?
Réponse
Un monolithe modulaire est une application déployée comme une seule unité mais structurée en modules fortement découplés avec des boundaries claires. Contrairement au monolithe classique où tout est mélangé, le monolithe modulaire organise le code en modules indépendants qui communiquent via des interfaces bien définies. Cette approche combine les avantages de la simplicité du monolithe (déploiement unique, transactions ACID simples) avec la maintenabilité des microservices (séparation des responsabilités, boundaries claires).
2Quelle est la différence principale entre un monolithe et des microservices ?
Quelle est la différence principale entre un monolithe et des microservices ?
Réponse
La différence principale réside dans le déploiement et l'indépendance : un monolithe est déployé comme une seule unité où tous les composants partagent le même processus et la même base de données, tandis que les microservices sont des services indépendants déployés séparément avec leurs propres bases de données. Le monolithe offre simplicité et transactions ACID faciles mais pose des problèmes de scalabilité et de maintenance à grande échelle. Les microservices permettent scalabilité indépendante et déploiements autonomes mais introduisent la complexité distribuée.
3Qu'est-ce qu'un message pattern dans NestJS Microservices ?
Qu'est-ce qu'un message pattern dans NestJS Microservices ?
Réponse
Un message pattern dans NestJS définit le mode de communication entre microservices. Il existe deux types principaux : request-response (synchrone avec réponse attendue) et event-based (asynchrone sans attente de réponse). Le decorateur @MessagePattern() définit un handler pour request-response, tandis que @EventPattern() gère les événements asynchrones. Le choix du pattern dépend du cas d'usage : request-response pour les opérations nécessitant une réponse immédiate, event-based pour les notifications et l'eventual consistency.
Quel est le rôle d'un transporter dans NestJS Microservices ?
Quelle est la différence entre @MessagePattern() et @EventPattern() ?
+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
Bonnes pratiques de sécurité
Performance et Déploiement Cloud
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