Node.js / NestJS

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

30 questions d'entretien·
Senior
1

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).

2

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.

3

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.

4

Quel est le rôle d'un transporter dans NestJS Microservices ?

5

Quelle est la différence entre @MessagePattern() et @EventPattern() ?

+27 questions d'entretien

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