Node.js / NestJS

Microservices

Monolith vs modularer Monolith vs Microservices, message patterns, transporters (TCP, Redis, NATS, RabbitMQ, Kafka), Kommunikation (sync/async, event-driven), CQRS, event sourcing, client/server

30 Interview-Fragen·
Senior
1

Was ist ein modularer Monolith?

Antwort

Ein modularer Monolith ist eine Anwendung, die als einzelne Einheit bereitgestellt wird, aber in stark entkoppelte Module mit klaren Boundaries strukturiert ist. Anders als beim klassischen Monolith, bei dem alles vermischt ist, organisiert der modulare Monolith den Code in unabhängige Module, die über klar definierte Schnittstellen kommunizieren. Dieser Ansatz kombiniert die Einfachheit des Monolith (einzelnes Deployment, einfache ACID-Transaktionen) mit der Wartbarkeit von Microservices (Trennung der Zuständigkeiten, klare Boundaries).

2

Was ist der Hauptunterschied zwischen einem Monolith und Microservices?

Antwort

Der Hauptunterschied liegt in Deployment und Unabhängigkeit: Ein Monolith wird als einzelne Einheit bereitgestellt, in der alle Komponenten denselben Prozess und dieselbe Datenbank teilen, während Microservices unabhängige Dienste sind, die separat mit eigenen Datenbanken bereitgestellt werden. Monolithen bieten Einfachheit und einfache ACID-Transaktionen, stoßen aber bei Skalierung und Wartung im großen Maßstab auf Probleme. Microservices ermöglichen unabhängige Skalierung und autonome Deployments, führen aber verteilte Komplexität ein.

3

Was ist ein Message Pattern in NestJS Microservices?

Antwort

Ein Message Pattern in NestJS definiert den Kommunikationsmodus zwischen Microservices. Es gibt zwei Haupttypen: request-response (synchron mit erwarteter Antwort) und event-based (asynchron ohne Warten auf Antwort). Der @MessagePattern()-Dekorator definiert einen Handler für request-response, während @EventPattern() asynchrone Events verarbeitet. Die Wahl des Patterns hängt vom Anwendungsfall ab: request-response für Operationen, die eine sofortige Antwort erfordern, event-based für Benachrichtigungen und eventual consistency.

4

Was ist die Rolle eines Transporters in NestJS Microservices?

5

Was ist der Unterschied zwischen @MessagePattern() und @EventPattern()?

+27 Interview-Fragen

Meistere Node.js / NestJS für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten