切换主题
知识地图
可以从一个工程问题进入课程,而不必按目录顺序阅读。
| 工程问题 | 先理解 | 再深入 |
|---|---|---|
| 为什么换数据库会影响业务代码 | 责任边界 | 六边形、模式 |
| 什么属于领域模型 | DDD | 事务边界 |
| 订单落库了但通知丢失 | 双写问题 | Inbox 幂等 |
| 三个服务副本抢同一工作 | 锁与租约 | 调度预留 |
| 取消之后为什么还收到成功 | 状态机 | 执行恢复 |
| 长任务重启后怎样继续 | 耐久编排 | Worker 本地事实 |
| 大文件 URL 排队后过期 | 资源身份与授权 | 安全边界 |
| JSON 可以解析却仍无效 | 契约与校验 | 领域规则 |
| 页面显示了上一个请求的数据 | 前端状态 | 投影与补偿 |
| 测试通过但线上重复执行 | 故障测试 | 幂等边界 |
| CI 成功却未运行新版本 | 发布证据 | 运行验证 |
三条贯穿课程的线
所有权:谁拥有规则、对象、资源与状态?对应责任划分、DDD、业务投影、身份范围。
可靠性:在哪里保存事实,重复如何吸收,崩溃后谁恢复?对应事务、Outbox/Inbox、租约、执行恢复。
证据:怎样判断设计落实了,而不是只写在文档里?对应契约、测试、发布与可观测性。
从概念到实现
100%
职责与模型
→边界与事务
→可靠协作
状态与时间
→异步执行
→恢复与补偿
契约与身份
→测试与运行证据
→新场景迁移
可触控平移或键盘滚动;每张图的正文同时提供文字解释。
文字解释:责任与模型帮助定义事务,事务之外的协作需要可靠机制;状态与时间帮助解释重试与取消;契约、身份和验证贯穿所有链路。箭头表示学习依赖,不是实际系统网络通信。
如何判断自己学会了
选择一个与 TDP 无关的系统,例如支付通知、报表导出或视频审核。尝试回答:谁拥有事实?哪些写入原子?哪一步可能结果未知?如何恢复?如何避免重复效果?如何验证?如果只能说出组件名字,还需要回到问题与原理。