全部模板

Saga 模式架构图模板

绘制 Saga 模式实现分布式事务——编排器、正向步骤和补偿路径。

使用此模板

模板亮点

  • 编排器驱动正向的本地事务链
  • 失败时补偿行反向撤销已提交步骤
  • 虚线失败边和反向回滚顺序

这个模板适合做什么

Saga 模式架构图展示了一个长事务如何由多个服务的本地事务组成,并在某一步失败时通过补偿撤销之前已提交的步骤。本模板呈现标准的编排式 Saga:一个编排器协调正向路径(订单 → 支付 → 库存 → 物流),当下游失败时补偿路径反向撤销已提交步骤(释放库存 → 退款 → 取消订单)。适合用于设计分布式事务、整理回滚语义文档,或解释为什么 ACID 无法跨微服务、Saga 为何是答案。

适用场景

  • 设计跨多个微服务的分布式事务。
  • 解释为什么单个 ACID 事务无法跨服务。
  • 整理 Saga 中每一步的补偿动作文档。
  • 规划针对临时性失败的重试 vs 补偿策略。
  • 定位 Saga 卡在了哪两步之间。
  • 对比编排式 Saga 与编排式(事件驱动)Saga。

使用步骤

  1. 1顶部从编排器开始——它驱动 Saga。
  2. 2把正向路径画成水平的本地事务链。
  3. 3在正向路径末端加 Done 节点表示成功结果。
  4. 4在下方画补偿行——除最后一步外每个正向步骤一个补偿。
  5. 5用虚线「失败时」箭头把每个正向步骤连到它的补偿。
  6. 6把补偿从右向左链起来,展示回滚顺序。

简单示例

订单 Saga

编排器 → 订单服务(创建订单)
订单 → 支付服务(向客户收款)
支付 → 库存服务(预扣库存)
库存 → 物流服务(预订承运)→ Done
第 N 步失败时:跑补偿 N-1、N-2、...、1

在线开始编辑

在 CodePic 中打开模板后,替换示例节点,就能很快整理成自己的学习导图。

查看示例: /templates/saga-pattern-architecture/examples

更多推荐模板