(Wikipedia)
A sequence of steps, each of which is a local transaction in a microservice
The gold saint in the constellation of Gemini
Allows to rollback single steps of the saga
Prevents unsupported state transitions from happening by using a state machine
(or ZeroMQ, Kafka, Amazon MQ o SQS, Google Cloud Pub/Sub, ActiveMQ...)
| Choreography | Orchestration |
|---|---|
| Loose coupling | Tight coupling |
| One format for events | Different formats for events |
| Fully decentralized | Orchestrator as a possible bottleneck |
| Business process split on different applications | Business process handled almost totally by the orchestrator |