这个模板适合做什么
事件驱动架构图展示了服务之间如何通过事件而非直接调用进行通信。本模板呈现三层核心:当事情发生时发出领域事件的生产者、分发事件的事件总线(Kafka、RabbitMQ、NATS),以及异步响应事件的消费者——发通知、更新分析、刷新搜索索引。事件存储可持久化事件用于重放和审计。适合用于设计事件驱动系统、为现有系统整理文档,或解释为什么生产者和消费者通过总线解耦。
适用场景
- 在选择消息中间件之前,为新的事件驱动系统做设计。
- 向干系人解释为什么生产者不直接调用消费者。
- 为设计评审整理系统中流动的事件文档。
- 展示事件总线在哪里持久化事件、在哪里实时分发。
- 规划从请求 / 响应单体迁移到事件驱动服务。
- 定位失败原因:是生产者发出、broker 路由还是消费者处理出了问题?
使用步骤
- 1在顶部绘制生产者层——状态变化时发出事件的服务。
- 2在中间添加事件总线(Kafka、RabbitMQ、NATS 等)。
- 3在总线旁添加用于重放和审计的事件存储。
- 4在底部绘制消费者层——响应事件的服务。
- 5把每个生产者连到总线、总线连到每个消费者。
- 6在箭头上标注哪些事件流过哪些主题,让订阅关系清晰。
简单示例
订单处理事件流
订单服务发出 OrderPlaced 事件 → 事件总线
事件总线持久化到事件存储并扇出给消费者
通知服务 → 给客户发邮件
分析服务 → 更新营收看板
搜索索引 → 标记商品库存
在线开始编辑
在 CodePic 中打开模板后,替换示例节点,就能很快整理成自己的学习导图。


