Wir implementieren das Saga-Pattern seit sechs Monaten. Wir begannen mit Choreographie — jeder Service reagiert auf Events. Bis 5 Services funktionierte es. Dann kam das Chaos.
Choreographie — Dezentrale Koordination¶
Jeder Service hört auf Events und reagiert. Kein zentraler Koordinator. Vorteil: Loose Coupling. Nachteil: Verteilte Logik — niemand sieht den gesamten Flow. Debugging ist ein Albtraum. „Wo ist die Bestellung hängen geblieben?”
Orchestration — Zentraler Koordinator¶
Ein Orchestrator (Saga Coordinator) steuert den gesamten Flow. Sendet Befehle an Services, wartet auf Antworten, entscheidet über Compensations. Vorteil: Sichtbarkeit des gesamten Flows, einfacheres Debugging. Nachteil: Single Point of Failure, engere Kopplung.
Unser hybrides Modell¶
Einfache Flows (2–3 Schritte) → Choreographie. Komplexe Flows (4+ Schritte, Verzweigungen, Timeouts) → Orchestration über Temporal.io. Temporal: eine Workflow-Engine mit Durable Execution, automatischen Retries und vollständiger Sichtbarkeit.
Es gibt keinen „richtigen” Ansatz¶
Choreographie für Einfaches, Orchestration für Komplexes. Die meisten Systeme brauchen beides.
Brauchen Sie Hilfe bei der Implementierung?
Unsere Experten helfen Ihnen bei Design, Implementierung und Betrieb. Von der Architektur bis zur Produktion.
Kontaktieren Sie uns