Rabbitmq消息积压问题

面试题如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?面试官心理分析你看这问法,其实本质针对的场景,都是说,可能你的消费端出了问题,不消费了;或者消费的速度极其慢。接着就坑爹了,可能你的消息队列集群的磁盘都快写满了,都没人消费,这个时候怎么办?或者是这整个就积压了几个小时,你这个时候怎么办?或者是你积压的时间太长了,...
摘要由CSDN通过智能技术生成

面试题

如何解决消息队列的延时以及过期失效问题?

消息队列满了以后该怎么处理?

有几百万消息持续积压几小时,说说怎么解决?

面试官心理分析

你看这问法,其实本质针对的场景,都是说,可能你的消费端出了问题,不消费了;或者消费的速度极其慢。接着就坑爹了,可能你的消息队列集群的磁盘都快写满了,都没人消费,这个时候怎么办?或者是这整个就积压了几个小时,你这个时候怎么办?或者是你积压的时间太长了,导致比如 RabbitMQ 设置了消息过期时间后就没了怎么办?

所以就这事儿,其实线上挺常见的,一般不出,一出就是大 case。一般常见于,举个例子,消费端每次消费之后要写 mysql,结果 mysql 挂了,消费端 hang 那儿了,不动了;或者是消费端出了个什么岔子,导致消费速度极其慢。

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
RabbitMQ消息积压是指在RabbitMQ中有大量未被消费的消息堆积在队列中的情况。这可能会导致系统性能下降和消息处理延迟。关于RabbitMQ消息积压的解决方案主要包括以下几点: 1. 优化消费者:检查消费者的处理速度,确保消费者能够及时处理消息。可以增加消费者数量、优化消费者代码、使用多线程等方式来提高消费者的吞吐量。 2. 增加队列容量:如果消息积压是因为队列容量不足导致的,可以考虑增加队列的容量。可以通过调整队列的参数,例如增大队列的最大长度或增加内存限制来提高队列的容量。 3. 设置消息过期时间:通过设置消息过期时间,可以让消息在一定时间内没有被消费时自动从队列中删除,避免消息长时间积压。 4. 使用Confirm模式:在生产者发送消息后,通过使用Confirm模式,可以确保消息正确地发送到RabbitMQ。一旦消息被发送到队列中,RabbitMQ会发送一个Ack给生产者,表示消息已经正确到达目标队列。如果消息发送失败,RabbitMQ会发送一个Nack消息给生产者,可以进行重试操作。 总结:要解决RabbitMQ消息积压问题,可以优化消费者的处理速度,增加队列容量,设置消息过期时间,使用Confirm模式等方法来提高消息的处理效率和可靠性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [RabbitMQ消息丢失|消息重复|消息积压原因+解决方案](https://blog.csdn.net/weixin_44330810/article/details/125789340)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [java面试题_消息中间件--RabbitMQ(22题).pdf](https://download.csdn.net/download/qq_44273429/20923905)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值