📚 分类
rabbitMq
🕵🏽‍♀️ 问题描述
rabbitMq如果有消息堆积在MQ,如何解决(消息堆积怎么解决)
👨‍🏫 问题讲解
当生产者发送消息的速度超过了消费者处理消息的速度,就会导致队列中的消息堆积,直到队列存储消息达到上限。之后发送的消息就会成为死信,可能会被丢弃,这就是消息堆积问题。

❒ 解决消息堆积有三种种思路

✔ 增加更多消费者,提高消费速度
✔ 在消费者内开启线程池加快消息处理速度
✔ 扩大队列容积,提高堆积上限

❒ 惰性队列

✔ 接收到消息后直接存入磁盘而非内存
✔ 消费者要消费消息时才会从磁盘中读取并加载到内存
✔ 支持数百万条的消息存储

@Bean
public Queue lazyQueue(){
 return QueueBuilder
  .durable("lazy.queue")
  .lazy()//开启x-queue-mode为lazy
  .build();
}
🏳️‍🌈 问题总结
解决消息堆积有三种种思路

✔ 增加更多消费者,提高消费速度
✔ 在消费者内开启线程池加快消息处理速度
✔ 扩大队列容积,提高堆积上限,采用惰性队列
📖 问题信息
📈 浏览次数:5 | 📅 更新时间:2025-12-01 22:01:50
📦 创建信息
🏷️ ID:71 | 📅 创建时间:2024-11-05 23:29:17