Base120 · Composition
Orchestration vs Choreography
Choose between centralized coordination or distributed peer-to-peer interaction
When to use
"Use when coordinating multiple components. Choose orchestration (centralized conductor) for predictable, auditable flows. Choose choreography (distributed peer-to-peer) for flexible, scalable, fault-tolerant systems."
Example
"Orchestration — a workflow engine calls each service in sequence, handling retries and compensation. Choreography — each service publishes events, and other services react independently. Orchestration is easier to debug; choreography is easier to scale."
Common misuse
"Choosing the coordination style based on fashion rather than requirements. Orchestration and choreography each have strengths; the choice depends on the specific trade-offs of predictability, scalability, and fault tolerance."