Skip to content

设计模式(Design Patterns)

模式 = 反复出现的场景的成熟解。本 group 解决 L2 第三问:"典型场景有没有现成答案?"

本 group 包含

文档核心问题V2 节点
Tactical MappingL1 战术模式如何映射到 L2?B3 + B4
Saga跨 BC 长事务如何实现?B3 分解 + B7
CQRS + ES读写分离 + 事件溯源B4 抽象
Event-Driven Workflow事件驱动的业务流程?B7 表达
Event-Request-Response Hybrid同步 + 异步如何混用?B6 权衡
Compound Control多个反馈环如何协同?控制论 Ch 5

模式的选型框架

模式选型 = 3 个问题
  1. 一致性需求?强 → Saga + 补偿 / 弱 → 事件最终一致
  2. 查询复杂度?高 → CQRS(读模型专门优化)
  3. 协作紧密度?紧 → 同步 RPC / 松 → 事件驱动

阅读顺序

tactical-mapping (从 L1 战术到 L2 模式)

saga (分布式事务)

cqrs-es (读写分离)

event-driven-workflow (事件驱动)

event-request-response-hybrid (混合)

compound-control (复合控制)

与其他 group 的关系

  • 上游:03-boundaries(契约 → 模式选型)
  • 下游:05-quality(模式 → 质量属性影响)、L3(模式 → 代码实现)

关键洞察

模式不是"越多越好"——是"用了能换什么"—— 用 Saga 换一致性,但增加调试复杂度 用 CQRS 换查询性能,但增加数据一致性挑战 每个模式都是一次"用复杂度换特性"的交易。

相关链接

Last updated:

从名家方法论与工程化思路中蒸馏出自己的工程体系。