时序图怎么画:接口调用关系一图讲清 接口联调时一段文字写「App 调订单服务订单服务再调库存服务」读三遍还是分不清谁在等谁。核心观点时序图横向排参与者、纵向按时间往下走一条箭头就是一次调用分清同步、异步和返回三种箭头再用 alt、loop 片段表达分支和重复接口关系就一目了然。时序图的5个基本元素时序图由参与者、生命线、激活条、消息和组合片段 5 种元素组成先认形状再动手画。这些画法出自 UML 2 的顺序图Sequence Diagram国内常叫时序图。元素画法含义参与者顶部的矩形框人用小人参与交互的角色、系统或服务生命线参与者下方的竖虚线时间从上往下流动激活条生命线上的细长矩形这段时间它正在处理消息两条生命线之间的箭头一次调用或通知按时间从上往下排组合片段框住几条消息的方框左上角写 alt、loop 等分支、重复、可选箭头怎么选同步异步实线实心箭头是同步调用实线开口箭头是异步消息虚线箭头是返回三种不要混用。同步调用方发出后停下来等结果比如查询库存。异步发出去就接着往下走不等结果比如往消息队列发一条「订单已创建」。返回同步调用的结果用虚线从被调方指回调用方线上写返回了什么。用 Mermaid 写时-是同步-)是异步--是返回。按4步画下单时序图以「用户提交订单」为例按排参与者、写消息、补返回、加片段 4 步画。排参与者按调用顺序从左到右排发起方放在左端。写消息从上往下写每条写成「动词 对象」如「扣减库存」。补返回每个同步调用都画一条虚线返回写清返回内容。加片段有分支用 alt要重复用 loop。下面的代码可以直接粘贴进支持 Mermaid 的编辑器出图系统为虚构消息队列库存服务订单服务App消息队列库存服务订单服务Appalt[库存充足][库存不足]loop[至多 5 次]用户提交订单1创建订单2扣减库存3扣减结果4订单已创建5返回订单号6返回库存不足7每 2 秒查询支付状态8支付状态9用户组合片段按场景选分支用 alt条件满足才做用 opt重复用 loop并行用 par片段左上角写类型、方括号里写条件。alt互斥分支用虚线分成几格每格写一个条件如「库存充足」「库存不足」。opt条件不满足就跳过如「用了优惠券才校验券」。loop重复执行写清次数或停止条件。par几件事同时进行如发短信和推送。常见的4个画错画错多半错在 4 处参与者乱排、消息写得空、漏画返回、一张图塞太多。参与者乱排没按调用顺序排箭头左右来回穿读图要来回找。消息写得空只写「调用」「请求」看不出这一步做什么。漏画返回同步调用没有返回线看不出结果从哪回来把异步画成同步也会误导排查。一张图塞太多参与者超过 6 个或消息超过 20 条就按场景拆成几张图。总结画时序图先排参与者再从上往下写消息同步、异步、返回三种箭头分清楚分支和重复交给 alt、loop。守住这几条谁调了谁、谁在等谁一眼就清楚。互动问题你手上正在画哪个接口评论区写出参与者和调用顺序我帮你看看哪条该用同步、哪条该用异步。