# Saga - Choreography

> Coordinate distributed transactions through event-based choreography

- **Category**: Cloud
- **Subcategory**: aws
- **Canonical URL**: https://designpattern.fyi/patterns/aws_saga_choreography/

---

## Description
The Saga Choreography pattern coordinates distributed transactions through event-based choreography where each service publishes events after completing local transactions. Other services listen for these events and execute their local transactions accordingly. There is no central coordinator; services communicate through events to maintain eventual consistency.


## Use Cases
Use when implementing distributed transactions across microservices without a central coordinator or when you want event-driven coordination.





## Trade-offs


### Advantages

- No single point of failure

- Decentralized coordination

- Natural fit for event-driven architectures

- Flexible and scalable




### Considerations & Drawbacks

- Complex to debug and monitor

- Difficult to understand overall flow

- Requires compensating transactions







---
**Reference**: [Original Source](https://docs.aws.amazon.com/prescriptive-guidance/latest/cloud-design-patterns/saga-choreography.html)

