两种不一致:问题定义与风险地图
2026/8/22大约 2 分钟
分布式事务系列 · 阶段 4 · 消息一致性 · 第 31/49 篇 · 🚧 占位待学
上一篇:《Saga 选型:什么时候非它不可》
下一篇:《本地消息表:同库同事务是灵魂》
学习大纲:《分布式事务学习总纲》
状态:待学习。 本文为占位文档:知识点清单、实验与验收标准已就绪,正文待按「先学习、先实验、再撰写」补全。
对应总纲单元:阶段 4A · 单元 4A.1
一、本文要解决的问题
消息方案要防的两种不一致——事务成功但消息丢、消息发了但事务回滚——分别怎么发生?把生产端、MQ、消费端三段的风险全部画在一张图上。
二、知识点清单
- 不一致一:本地事务成功,消息没发出去(发送在事务外 + 进程崩溃)
- 不一致二:消息发出去了,本地事务却回滚(发送在事务内)
- 三段风险地图:生产端丢失 / MQ 丢失与重复 / 消费端丢失与重复
- 最终一致的前提:至少一次投递 + 消费幂等
三、动手实验(学习时必须真跑)
- 画出两种不一致的完整时序图与三段风险地图
四、验收标准(全部通过才进入下一篇)
五、写作提示(补正文时遵守)
- 开篇问题驱动;结构走「是什么 → 为什么 → 怎么做 → 背景知识」
- 所有代码、命令、输出必须先在本机跑通再写入,不得杜撰
- 版本口径以总纲环境清单为准(Apache Seata 2.6.0 / MySQL 8.0 / RocketMQ 5.x / Spring Boot 3.x)
- 涉及版本敏感结论时标注出处与时间
本篇完成后,把文首导航块的「🚧 占位待学」去掉,并在总纲处打卡。