美妙的美人鱼 mermaid 程序猿的画图神器

mermaid(美人鱼), 是一个类似 Graphviz ,用文本语法来描述各种图(流程图、 时序图、甘特图)的工具!

flowchart TD
  用户["fa:fa-user用户"] --> API网关("fa:fa-random API网关")
  subgraph one ["领域微服务"]
    direction LR
    认证授权 <--> 用户服务 <--> 商品服务  <--> 交易服务
    style 认证授权 fill:gray,stroke:red,color:#fff,stroke-dasharray: 2 2
    style 用户服务 fill:#a00,stroke:red,color:#fff,stroke-dasharray: 2 2
    style 商品服务 fill:#bb0,stroke:red,color:#fff,stroke-dasharray: 2 2
    style 交易服务 fill:#6419E6,stroke:red,color:#fff,stroke-dasharray: 2 2
  end
  
  subgraph two ["基础设施"]
    配置中心["fa:fa-cogs 配置中心"]
    服务发现["fa:fa-graduation-cap 服务发现"]
    服务监控["fa:fa-cogs 服务监控"]
    日志分析["fa:fa-area-chart 日志分析"]
    配置中心 & 服务发现 & 服务监控 &  日志分析
    style 配置中心 fill:gray,stroke:red,color:#fff,stroke-dasharray: 2 2
    style 服务发现 fill:#a00,stroke:red,color:#fff,stroke-dasharray: 2 2
    style 服务监控 fill:#bb0,stroke:red,color:#fff,stroke-dasharray: 2 2
    style 日志分析 fill:#6419E6,stroke:red,color:#fff,stroke-dasharray: 2 2
  end

  API网关 -->one
  one --> two

输出如下:

基础设施
配置中心
服务发现
服务监控
日志分析
领域微服务
交易服务
认证授权
用户服务
商品服务
用户
API网关

再看一个复杂的:

flowchart LR

start["fa:fa-address-card packageData\n组装数据"] --> if_1{"fa:fa-code-fork if_1判断1"}

if_1 -->|"条件1,指定供应商"| channel1["channel1\n供应商1"]
if_1 -->|"条件2,指定供应商"| channel2[channel2\n供应商2]
if_1 -->|"条件3,并行获取\n供应商渠道剩余量"| if_3((" "))
if_1 -->|"条件4,各种复杂判断"| if_4["biz1获取业务动态值"]

subgraph " "
d1["channel1Query\n获取供应商1剩余量"]
d2["channe2Query\n获取供应商1剩余量"]
d3["channe3Query\n获取供应商1剩余量"]
d4["channe4Query\n获取供应商1剩余量"]
d5["channe5Query\n获取供应商1剩余量"]
d6["channe6Query\n获取供应商1剩余量"]

if_3 --> d1 & d2 & d3 & d4  & d5  & d6

d22["channelSelectc选出剩余量\n最多的那个供应商"]
d1 --> d22
d2 --> d22
d3 --> d22
d4 --> d22
d5 --> d22
d6 --> d22
end  

if_4 --> f{"if_2判断2"}
subgraph " "
f --> f1["channel3供应商3"]
f --> f2["channel4供应商4"]

f --> f3{"if_3判断3"}
f3 --> g1["channel5供应商5"]
f3 --> g2["channel6供应商6"]
g1 & g2 --> JJ((" "))

f1 & f2 & JJ--> f1f2((" "))

end  

channel1 --> stop["batchsende\n批量发送消息"]
channel2 --> stop
d22 --> stop
f1f2 --> stop

输出如下:

条件1,指定供应商
条件2,指定供应商
条件3,并行获取
供应商渠道剩余量
条件4,各种复杂判断
channel3供应商3
if_2判断2
channel4供应商4
if_3判断3
channel5供应商5
channel6供应商6
channel1Query
获取供应商1剩余量
channe2Query
获取供应商1剩余量
channe3Query
获取供应商1剩余量
channe4Query
获取供应商1剩余量
channe5Query
获取供应商1剩余量
channe6Query
获取供应商1剩余量
channelSelectc选出剩余量
最多的那个供应商
packageData
组装数据
if_1判断1
channel1
供应商1
channel2
供应商2
biz1获取业务动态值
batchsende
批量发送消息
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱游泳的老白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值