
Microservices
Service-Architektur, Discovery, Kommunikation, API Gateway, Circuit Breaker, Observability, Structured Logging, Metrics, Distributed Tracing
1Was ist der Hauptunterschied zwischen einer monolithischen und einer Microservices-Architektur?
Was ist der Hauptunterschied zwischen einer monolithischen und einer Microservices-Architektur?
Antwort
In einer Microservices-Architektur wird die Anwendung in unabhängige Services zerlegt, die separat entwickelt, deployt und skaliert werden können, im Gegensatz zum Monolithen, bei dem der gesamte Code in einem einzigen Prozess liegt. Jeder Microservice hat seine eigene Datenbank und kommuniziert über APIs. Das ermöglicht bessere Skalierbarkeit, Resilienz und Technologieflexibilität, führt jedoch zu erhöhter betrieblicher Komplexität.
2Was ist die Hauptaufgabe von Service Discovery in einer Microservices-Architektur?
Was ist die Hauptaufgabe von Service Discovery in einer Microservices-Architektur?
Antwort
Service Discovery ermöglicht es Services, sich dynamisch zu lokalisieren, ohne hartkodierte Konfiguration. Services registrieren sich bei einer Registry (Consul, etcd, Eureka) mit ihrer IP-Adresse und ihrem Port. Clients fragen die Registry ab, um verfügbare Instanzen zu erhalten. Das erleichtert horizontale Skalierung, Continuous Deployment und Resilienz bei Instanzausfällen.
3Welches Pattern verwaltet in einer Microservices-Architektur die Konsistenz verteilter Daten ohne ACID-Transaktion?
Welches Pattern verwaltet in einer Microservices-Architektur die Konsistenz verteilter Daten ohne ACID-Transaktion?
Antwort
Das Saga-Pattern verwaltet die Konsistenz verteilter Daten über eine Folge lokaler Transaktionen. Jeder Service führt seine Transaktion aus und veröffentlicht ein Event. Schlägt ein Schritt fehl, machen kompensierende Transaktionen vorherige Änderungen rückgängig. Implementierungen können orchestriert (zentraler Koordinator) oder choreografiert (Pub/Sub-Events) sein. Das gewährleistet Eventual Consistency ohne verteilte Locks.
Welche Go-Bibliothek wird häufig verwendet, um Service Discovery mit Consul zu implementieren?
Was ist der Hauptunterschied zwischen synchroner (REST/gRPC) und asynchroner (Messaging) Kommunikation zwischen Microservices?
+21 Interview-Fragen
Weitere Go-Interviewthemen
Go-Grundlagen
Go-Datenstrukturen
Go-Interfaces
Fehlerbehandlung
Goroutines-Grundlagen
Channels
Go Modules
HTTP-Server
HTTP-Client
JSON-Kodierung
Database/SQL
context-Paket
Testing
Concurrency-Patterns
Synchronisationsprimitive
Go-Web-Frameworks
REST-API-Design
gRPC
Reflection
Speicherverwaltung
Performance-Optimierung
Generics
Go Design Patterns
Sicherheit und Authentifizierung
Docker & Containerization
Kubernetes Basics
Fortgeschrittenes Go
CLI-Entwicklung
Meistere Go für dein nächstes Interview
Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.
Kostenlos starten