别再问我MQ消息怎么保证顺序消费

面试中肯定会被问到MQ方面的问题,那么面试官一定会问你如何保证消息的顺序性,

Q:看你有用到Kafka消息中间件,请问怎么保证消息顺序消费?

A:在发送消息的时候指定同一个key,Kafka分区器会把相同的key分发到同一个分区中,那么消费者消费就能保证顺序消费了。

当你回答这个答案的时候,是不是认为已经好了,图样图森破!

Q:如果这样写入一个分区,就不能并发消费了,有没有可能保证全局顺序也能保证并发消费?

听到这个问题心里是不是有千万个草泥马奔腾,又想马儿长得好,又想马儿不吃草,要不你来告诉我怎么做!

世界上解决一个计算机问题最简单的方法:“恰好”不需要解决它!

记住这句话

有些问题,看起来很重要,但实际上我们可以通过合理的设计或者将问题分解来规避,如果硬要把时间花在解决问题本身,实际上不仅效率低下,而且也是一种浪费。从这个角度来看消息的顺序消费问题,可以总结以下两点:

  1. 不关注乱序的应用实际大量存在
  2. 队列无序并不意味着消息无序

所以从业务层面来保证消息的顺序而不仅仅是依赖于消息系统,是不是我们应该寻求的一种更合理的方式?

我们依赖MQ的目的是什么?保证消息的可靠新!高可用性!高性能!做它擅长做的事情

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值