前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >面试题-MQ如何保证消息不被重复消费(三)

面试题-MQ如何保证消息不被重复消费(三)

作者头像
小土豆Yuki
发布2024-01-23 12:35:19
1130
发布2024-01-23 12:35:19
举报
文章被收录于专栏:洁癖是一只狗洁癖是一只狗

面试题,如果消息重复了,我们应该如何处理呢

首先,我们不管用什么消息中间件,都会有重复消费的消息的可能,此时如何解决呢

比如,我们的kafka,每一条消息都有一个offset,唯一标识这个条消息,默认情况下,消费者在消费完消息之后,然后在提交这个offset,消费者更才会认为消息被消费了,但是,我说的是但是,在消费这个提交offset此刻,我们的消费者重启了,没有到这个提交,我们的消费者更就不知道消费者消费了,然后消费者更会继续消费消息,此时消费者就会重复消费消息

这个种问题如何解决呢,

  • 第一种,消费者,先查一下数据库,看看有没有数据,如果有,可以不消费,或者更新
  • 第二种,把消息放到redis里面,看看有没有,没有的话,我们再去消费
  • 第三种,直接在表里建立一个唯一索引,如果重复,直接报错,防止重复插入

其实就是让我们的消费者保证幂等性,就可以了

本文参与?腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-01-22,如有侵权请联系?cloudcommunity@tencent.com 删除

本文分享自 洁癖是一只狗 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com