Durable Execution: Langlaufende Workflows erstellen, die Neustarts überleben

Jedes Backend stößt irgendwann auf einen Prozess, der nicht in einen einzigen HTTP-Request passt. Ein Auftragsabwicklungs-Flow, der eine Karte belastet, Bestand reserviert, ein Lager benachrichtigt und eine Bestätigungs-E-Mail verschickt. Ein Onboarding-Pipeline, der Cloud-Ressourcen bereitstellt, eine Datenbank befüllt und eine Willkommenssequenz sendet. Diese Workflows dauern Sekunden bis Minuten, rufen mehrere externe Services auf und müssen zuverlässig abgeschlossen werden — auch wenn der Server mitten drin abstürzt.

Die Standardantwort ist eine Job-Queue plus eine in einer Datenbank persistierte Zustandsmaschine. Sie funktioniert, bis die Zustandsmaschine auf 15 Zustände, 40 Transitionen wächst und jeder Entwickler im Team Angst hat, sie anzufassen. Es gibt ein besseres Modell: Durable Execution.