← Back to microservices patterns maptransactions
🎛️
Microservices Pattern
Saga Pattern - Orchestration
A central orchestrator commands each service step and handles compensation.
Detailed Description
Orchestration makes the distributed workflow explicit.
It is often easier to operate for complex business processes because state and compensation are visible in one place.
Visual Diagram
Orchestration Saga
[Saga Orchestrator] drives the flow:
Step 1: call PaymentSvc.charge()
→ success → go to step 2
→ fail → compensate
Step 2: call StockSvc.reserve()
→ success → go to step 3
→ fail → call PaymentSvc.refund()
Step 3: call ShipSvc.schedule()
Full visibility: orchestrator knows stateTradeoffs
Pros
Visible workflow, easier monitoring
Cons
Coordinator coupling and extra component
Examples: Temporal.io, AWS Step Functions, Conductor, Camunda