标签:提交 机制 ready 发送 并发 导致 事务 判断 消息
一、rabbitmq出现消息重复的场景
A:消息消费成功,事务已经提交,ack时,机器宕机,导致没有ack成功,
Broker的消息重新由unack变为ready,并发送给其他消费者
B:消息消费失败,由于重试机制,自动又将消息发送出去
C、成功消费,ack时宕机,消息由unack变为ready,Broker又重新发送
解决方案、
1、消息者的业务消费接口应该设计为幂等性,比如扣库存有工作单的状态标志
2、在数据库消息表,每当消息到达消费端时,通过对消息的状态进行判断,防止消息重复消费
标签:提交 机制 ready 发送 并发 导致 事务 判断 消息
原文地址:https://www.cnblogs.com/jock766/p/14828831.html