title, type, tags, last_updated
| title |
type |
tags |
last_updated |
| Choreography |
concept |
| EDA |
| Architecture |
| Microservices |
|
2026-04-14 |
Aliases
- Choreography Pattern
- 编舞模式
- 去中心化事件协调
Definition
编舞模式(Choreography)是一种微服务间通过事件进行自发协调的模式,各服务自主响应事件并发布新事件,无需中央协调器。服务通过事件总线了解全局状态和下一步操作。
Characteristics
- Decentralized:无中央协调器,各服务平等
- Autonomous:每个服务自主决定如何响应事件
- Loosely Coupled:服务之间完全解耦,通过事件总线交互
- Resilient:局部故障不影响其他服务
- Harder to Track:整体业务流程不直观,调试复杂
Example
- 订单服务发布
OrderCreated 事件
- 库存服务订阅并发布
InventoryReserved 事件
- 支付服务订阅并发布
PaymentProcessed 事件
- 通知服务订阅并发送确认通知
Comparison with Orchestration
| 维度 |
Choreography(编舞) |
Orchestration(编排) |
| 控制 |
去中心化 |
集中式 |
| 协调器 |
无 |
有(Step Functions) |
| 复杂度 |
局部低,整体高 |
局部高,整体低 |
| 可观测性 |
较难追踪 |
易于追踪 |
| 适用场景 |
简单、独立的服务 |
复杂、有明确业务流程 |
Sources