消费生成订单异常的处理与补偿机制
plus 版本专属
此章节是黑马点评 Plus 版本中专有的内容,而在整套文档中将普通版本和 Plus 版本都融合在了一起,让大家更方便的学习。
在前两个章节中,讲解了消费 Kafka 后,消费消息超时的处理、正常生成订单的处理
本章节将会讲解生成订单失败后,应该如何处理
一、消费失败的执行流程
首先依旧是使用 MQ 的组件来进行消费 Kafka 消息的,这样可以更加方便的成功执行和各种失败的执行情况,此组件也是使用了大量的设计模式和技巧来进行拆分设计的,关于此组件的详细讲解,可以跳转到:Kafka 消费者抽象组件详细指南
1.1 方法职责
- 在消费失败回调中执行补偿:判断是否需要删除已购标记、触发 Redis 回滚、记录“恢复-失败”对账日志
- 目标是把“扣减成功但消费失败”的状态回退到一致状态,并保留审计线索
那就让我们来到 MQ 组件的消费失败入口,从这里开始进行讲解