mq消费幂等总结
mq消费幂等总结
针对mq新增场景:
1)首先查本地db书否已存在,存在则幂等
2)加redis乐观锁,加锁失败重试mq,
3)理论上上边2步可以解决大部分数据重复新增的问题,但是针对并发情况下,乐观锁超时释放的情况,数据库需要加唯一索引(outId, outType)进行兜底
针对mq更新场景:
1、单个更新:与新增类似
2、批量更新:
1)每次处理单条主数据,每条失败都会重试全部
2)加redis乐观锁,加锁失败重试mq,
3)针对新增的数据进行db幂等校验,幂等则结束此条数据.
原创
2021-01-22 10:39:49 ·
329 阅读 ·
0 评论