切换主题
学习路线
这里学习架构与工程设计。你不需要先熟悉 Workbench,它只作为实现证据;每章先用通用场景与最小例子建立理解,然后再进入真实代码。
第一阶段:为什么这样划分责任
依次学习 职责、耦合与内聚、六边形、DDD、设计原则与模式。
完成标准:能够为一个订单或报表功能说明规则放在哪里、外部协议如何接入,以及谁拥有状态。能分别画出运行时调用与代码依赖方向,不以文件数量判断架构质量。
练习任务:给“创建报表、计算内容、保存结果、发送通知”划分责任,先不考虑拆成微服务。
第二阶段:数据正确性与可靠协作
完成标准:能够指出数据库提交和消息发布之间的崩溃窗口,解释为什么可靠投递仍允许重复,以及认领到期后如何拒绝旧处理器确认。
练习任务:设计订单通知链路,列出每个“提交成功但响应丢失”的位置,给出恢复依据。亲手运行 Outbox 实验并解释四个计数状态。
第三阶段:异步执行的时间与状态
学习 状态机、耐久编排、调度、Worker 恢复、资源授权。
完成标准:分清长期请求、运行、步骤和尝试;解释取消请求与已停止的差别,指出纯调度算法和事务预留的职责。
练习任务:设计下载、并行处理、上传三段视频处理流程,包括重试、排队、URL 过期、执行器重启和旧结果晚到。
第四阶段:边界与用户体验
完成标准:能区分结构校验、业务规则、归属和认证;知道一个页面怎样处理独立区域失败及请求竞争;能建立回调与查询补偿共同更新的业务投影。
第五阶段:验证并运行设计
完成标准:为方案写出不变量、测试层级、恢复指标和发布验收证据。不要用“能启动”“日志没有报错”替代业务正确性证明。
怎样阅读一章
先看目标与问题,自己预测失败方式;读原理与最小例子;对比替代方案;展开代码证据,找出对应实现;最后先独立回答迁移练习,再对照答案。
章节标注时间包含阅读与练习的粗略预算,并非测量结果。首次阅读可跳过代码片段,第二遍再深入证据。建议每次完成一章并写下一个仍无法解释的问题。