CodePark/ questions / Event-driven design, sagas & outbox
START PRACTICINGPRACTICE
Backend question · System design & architecture › Event-driven design, sagas & outbox

An order saga spans five services. The business wants one place to see each saga's progress and changes the flow often. Which saga style fits best?

Orchestration, where a central orchestrator tells each service what to do next

The best fit is "Orchestration, where a central orchestrator tells each service what to do next". The orchestrator holds the saga's state and flow in one place. So you can see each saga's progress there, and you change the flow in one component.

"Choreography, where each service listens for the previous service's events" works well for a few steps. But it spreads the flow across many event handlers. This makes long sagas hard to follow and hard to change.