全部模板

CQRS 架构图模板

绘制 CQRS 架构——命令侧、查询侧、事件总线,以及构建读模型的投影器。

使用此模板

模板亮点

  • 命令侧:处理器、写模型、事件存储
  • 查询侧:处理器、读模型、投影器
  • 事件总线连接两侧、提供最终一致性

这个模板适合做什么

CQRS(命令查询职责分离)架构图展示了系统如何通过两个独立模型把写与读分开,并通过事件连接。本模板呈现典型 CQRS 形态:处理写的命令侧(命令处理器 + 写模型,通常事件溯源)、事件存储、发布事件的事件总线、监听并更新读模型的投影器,以及从优化后的读模型提供读的查询侧。适合用于设计 CQRS 服务、解释写读之间的最终一致性,或说明单个 API 端点如何在后端分为两条路径。

适用场景

  • 在写第一个命令处理器之前,设计 CQRS 服务。
  • 解释为什么写走一条路径、读走另一条。
  • 整理从事件构建读模型的投影步骤文档。
  • 规划命令侧与查询侧之间的最终一致性边界。
  • 定位陈旧读:是投影器滞后、失败还是落后?
  • 对比 CQRS 与单模型(CRUD)方案,论证复杂度合理。

使用步骤

  1. 1从客户端和把命令与查询分发的 API 网关开始。
  2. 2绘制命令侧:命令处理器、写模型、事件存储。
  3. 3绘制查询侧:查询处理器、读模型、投影器。
  4. 4在两者之间添加从存储发布事件的事件总线。
  5. 5把投影器连到总线、再连到读模型。
  6. 6标注一致性边界——写读之间最终一致。

简单示例

使用 CQRS 的订单服务

客户端 → API → 命令处理器 → 写模型 → 事件存储
事件存储 → 事件总线(OrderPlaced、OrderShipped)
投影器消费事件 → 更新读模型
客户端 → API → 查询处理器 → 读模型(无 JOIN、索引化)
写读独立扩展、独立部署

在线开始编辑

在 CodePic 中打开模板后,替换示例节点,就能很快整理成自己的学习导图。

查看示例: /templates/cqrs-architecture/examples

更多推荐模板