时序图

参与者之间随时间传递的消息,含返回、异步调用与分支。

1 个时序图示例

卡支付时序

一笔结账请求经过网页应用、支付 API 和银行,含被拒分支。

时间沿生命线向下流动。实线箭头是调用,虚线箭头是返回,alt 框包含授权的两种结果。强调色只落在一条消息上:成功的 201。

在编辑器中打开

什么是时序图?

时序图(顺序图)是 UML 交互图的一种,展示参与者之间按时间顺序传递的消息。参与者排在顶部,每人向下引出一条虚线生命线;实线实心箭头是同步调用,开放箭头是异步消息,虚线箭头是返回。

读图时自上而下:越往下时间越晚;alt、opt、loop 等组合片段框出分支、可选和循环。

什么时候用时序图

  • 设计登录、支付回调这类跨服务的接口调用,明确谁先调谁、超时怎么处理。
  • 排查线上问题时,按日志还原一次请求在各服务之间的往返。
  • 如果只想说明有哪些系统以及它们怎么连接,不关心先后顺序,用架构图更简洁。

怎样画好一张时序图

  1. 按调用发起的先后从左到右排列参与者,减少消息箭头的交叉。
  2. 消息写成具体的方法名或接口,例如「POST /orders」,并标出返回值。
  3. 一张图只画一个场景,正常路径和异常路径用 alt 片段区分。