rocketmq 消息幂等
时间: 2023-11-24 19:06:25 浏览: 76
rocketmq消息队列
RocketMQ消息幂等是指在消息重复消费时,不会对业务数据产生重复的影响。通常情况下,消息重复消费是由于网络抖动、消息重发等原因导致的。为了避免这种情况,可以采用以下两种方式实现RocketMQ消息幂等:
1. 利用业务主键去重:在消息发送时,将业务主键作为消息的唯一标识,消费者在消费消息时,先查询该业务主键是否已经存在,如果已经存在,则不再进行处理,否则进行业务处理。
2. 利用消息ID去重:在消息发送时,将消息ID作为消息的唯一标识,消费者在消费消息时,先查询该消息ID是否已经存在,如果已经存在,则不再进行处理,否则进行业务处理。
为了更好地实现RocketMQ消息幂等,可以使用通用的RocketMQ消息幂等去重消费者工具类,该工具类支持利用Redis或者MySQL做幂等表,支持业务主键去重或消息ID去重,同时还支持消息重复并发控制,确保重复的消息在消费成功/失败前不会同时被消费第二次。
阅读全文