
时序图 Sequence DiagramMermaid 手册 · 第 03 篇 / 共 16 篇参与者、消息箭头、生命线激活、逻辑块alt/loop/par/opt/critical/break、分组框与序号。适用版本Mermaid 11.x 主线版本标有 beta 的图表类型语法可能随版本演进。时序图 Sequence Diagram用于表达谁在什么时间给谁发了什么消息是接口文档、协议说明、链路分析的主力。基础示例数据库服务端浏览器数据库服务端浏览器用户点击登录1POST /login2查询用户3用户记录4200 token5跳转首页6用户参与者声明participant A %% 普通参与者 participant A as 别名 %% 带显示名 actor A %% 人形图标 actor A as 用户participant的声明顺序决定左右排列顺序未声明而直接出现的参与者会按首次出现顺序自动创建。消息箭头语法外观语义A-B实线无箭头少见A--B虚线无箭头少见A-B实线 实心箭头同步调用A--B虚线 实心箭头异步返回 / 响应A-xB实线 叉消息丢失 / 失败A--xB虚线 叉异步失败A-)B实线 开箭头异步消息A--)B虚线 开箭头异步消息返回A-B双向实线双向通信较新版本A--B双向虚线双向通信较新版本生命线激活activate S %% 或 S-S: 简写 deactivate S %% 或 S---S: 简写简写形式把/-直接放在箭头上写起来更紧凑BABA请求响应逻辑块循环BABAloop[每 5 秒]心跳pong条件分支DCADCAalt[缓存命中][缓存未命中]读缓存命中数据查数据库数据可选单分支LALAopt[开启了审计]写审计日志并行CBACBApar[并行请求]请求 B请求 C临界区 / 断言criticalBABAcritical[建立连接][连接超时]connect重试强制中断breakBABAbreak[参数非法]返回 400注释Note left of A: 左侧注释 Note right of A: 右侧注释 Note over A: 覆盖单个参与者 Note over A,B: 跨参与者注释支持br/换行在允许 HTML 的渲染端。分组框box给一组参与者加外框与配色适合按内网/外网客户端/服务端划分服务端客户端API移动 App浏览器API移动 App浏览器请求请求序号与自动编号autonumber %% 自动给每条消息编号 autonumber 10 %% 从 10 开始 autonumber 10 5 %% 从 10 开始步长 5参与者创建与销毁渲染错误:Mermaid 渲染失败: The destroyed participant undefined does not have an associated destroying message after its declaration. Please check the sequence diagram.其他配置%%{init: {sequence: {mirrorActors: false, showSequenceNumbers: true, wrap: true}}}%%常用项mirrorActors底部是否镜像参与者、showSequenceNumbers、wrap、messageAlign、actorMargin、diagramMarginX/Y。