时序图
时序图展示多方按时间排列的消息交互。构图AI「时序图」技能可一句话生成登录、支付等调用链并导出。
时序图
时序图用参与者与消息箭头描述调用顺序,适合登录、支付与链路讲解。构图AI 可一句话生成可编辑手绘时序图。
登录可免费体验 1 次;VIP 期内不限制日常画图;导出 PNG / SVG / .excalidraw。
什么时候用
- 接口联调前:前后端、多服务对齐「先调谁、带回什么、失败怎么回」。
- 排查延迟与故障:把超时、重试、回调画出来,定位卡在哪一跳。
- 协议说明:OAuth、支付、WebSocket 握手等需要严格顺序的场景。
- 新人 onboarding:比口头讲「登录大概是这样」更可核对、可评审。
不适合表达组织汇报关系(用组织结构图),也不适合表达数据表结构(用 ER 图)。若只有单系统内部步骤与判断,流程图往往更轻量;时序图的价值在「多方协作的时间顺序」。
核心元素
| 元素 | 说明 |
|---|---|
| 参与者 | 人、客户端、服务、中间件、第三方,顶部横排 |
| 生命线 | 自参与者向下的虚线,表示存活时间轴 |
| 消息 | 水平箭头,旁注方法名或事件名 |
| 返回 / 异步 | 常用虚线箭头,与同步调用区分 |
| 激活条(可选) | 表示某段时间内正在处理 |
画时序图时建议固定节奏:先定参与者名单 → 画主成功路径 → 再补失败、超时与回调。消息命名要可执行,例如「校验验证码」「签发 JWT」,避免「处理一下」。
排版规则(时序专用)
- 参与者从左到右按调用链排序:用户/客户端靠左,基础设施靠右,箭头多为短跳。
- 生命线间距均匀:过密会导致箭头文字重叠,过疏则画面空洞。
- 请求与返回成对:同步调用务必画返回,否则联调对不上字段来源。
- 垂直方向只增不减:时间永远向下;不要为了省空间把晚发生的消息画到上方。
反例:把「浏览器、CDN、网关、鉴权、用户服务、订单服务、库存、支付、短信、日志、监控」十一个参与者全画进一张支付时序——线交叉到无法讲解。应拆成「支付主链路」与「通知/对账」两张,或合并同角色实例。
Prompt 好坏对比
| 示例 | 为什么 | |
|---|---|---|
| 差 | 画登录时序图 | 参与者不明,粒度随意 |
| 差 | 把微服务里所有 RPC 都画上 | 范围失控,主路径被淹没 |
| 好 | 画微信登录时序:用户、前端、后端、微信开放平台,含 code 换 token | 参与者与关键步骤清楚 |
| 好 | 画支付回调时序:商户服务←支付平台,含验签失败分支 | 突出异步回调与失败 |
实践建议:先画「主成功路径」再叠加失败与超时;评审时也可分两张图——主路径与异常路径。
常见错误
- 参与者过多:线交叉、箭头密成一团,读者抓不住主路径。
- 漏掉返回或回调:只画请求不画响应,联调时对不上字段来源与错误码。
- 把业务判断全塞进时序:复杂分支应拆图,或在旁注简写条件,避免一张图讲完所有故事。
- 命名含糊:箭头上写「调用接口」无法落地;应写清动作与关键资源。
- 用时序代替架构:时序讲「一次调用怎么走」,架构讲「系统长期长什么样」,二者不要互相顶替。
与相邻图类型的区别
| 维度 | 时序图 | 流程图 | 数据流图 |
|---|---|---|---|
| 关注点 | 交互顺序与调用方 | 步骤与决策 | 数据如何被搬运与变换 |
| 主角 | 参与者 | 活动节点 | 数据存储与处理节点 |
| 时间 | 显式自上而下 | 隐式顺序 | 强调流向而非精确时刻 |
| 典型用途 | 登录、支付、RPC 链 | 审批、履约 SOP | ETL、埋点管道 |
若消息经过消息队列,箭头上写清「投递」与「消费」是两次交互,不要画成同步往返;否则研发会误以为调用方在等待结果。
第三方回调类链路要把「验签失败」画出来,否则联调只覆盖快乐路径,上线后对账会对不上。
用构图AI怎么画
选择「时序图」,写清参与者与场景,例如:「画微信支付时序图,含用户、商户、微信支付平台」。生成后核对请求/返回是否成对,标注关键接口名,再导出。可先对照 OAuth、支付示例页的参与者粒度,再改成自己的链路。
构图AI 共 12 种技能,复杂系统可搭配架构图(看全景)与流程图(看业务)使用,形成「结构—流程—交互」三件套。若只是产品对齐步骤,先用流程图往往更省事。
相关:时序图入门 · OAuth 示例 · 支付时序示例 · 登录时序示例 · 使用此技能画图
补充说明
时序图评审建议投影到大屏,按消息逐条念「谁在什么时候请求谁」。念不顺的地方,往往就是实现时会踩坑的地方。
使用构图AI 绘制该图类型时,把评审意见沉淀为下一次生成的约束,比反复从零描述更高效。也可结合站内示例与指南对照学习,再回到 /draw?skill=sequence-diagram 实操。
最后提醒:时序图上的每条消息最好能对应到真实接口名或事件名,哪怕先用临时代号,也比「调用一下」清晰。
示例 prompt
- 画一个用户登录的时序图,涉及浏览器、服务端、数据库
- 画微信支付的时序图,涉及用户、商户、微信支付平台
常见问题
时序图要画多少个参与者合适?+
一般 3~6 个最清晰。超过 7 个建议拆成「主流程 + 子系统细节」两张图,或合并同角色实例。
同步和异步怎么区分?+
同步常用实线箭头,返回与异步常用虚线箭头,并在消息旁标注动作名。构图AI 生成后可在画布上改线型与文字。
和流程图冲突吗?+
不冲突。流程图讲业务步骤,时序图讲技术交互;产品对齐用流程,接口联调用时序。
失败分支怎么画才不乱?+
先画主成功路径,失败与超时另开一张或用旁注简写;一张图塞满所有分支会交叉难读。