1. 首页
  2. 编程面试题
  3. Java
  4. 消息队列

如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?



消息过期失效问题,如果消息一段时间不消费,导致过期失效了,消息就丢失了,只能重新查出丢失的消息,重新发送。 再来说消息积压的问题:(思路是快速消费掉积压的消息)

- 首先排查消费端问题,恢复消费端正常消费速度。
- 然后着手处理队列中的积压消息。
- 停掉现有的 consumer。
- 新建一个 topic ,设置之前 10 倍的 partation,之前 10 倍的队列。
- 写一个分发程序,将积压的消息均匀的轮询写入这些队列。
- 然后临时用 10 倍的机器部署 consumer,每一批 consumer 消费 1 个临时的队列。
- 消费完毕后,恢复原有架构。
消息队列满了:只能边接收边丢弃,然后重新补回丢失的消息,再做消费。

发布者:admin,如若转载,请注明出处:https://ai1024.vip/39946.html

QR code
//