MQ消息堆积如何解决?

RabbitMQ如果有100万消息堆积在MQ,如何解决?

当生产者发送消息的速度超过消费者处理消息的速度,就会导致队列中的消息堆积,只到队列存储消息达到上限。之后发送的消息就会成为死信,可能会被丢弃,这就是消息堆积的问题。

解决消息堆积的三种思路:

    1. 增加更多的消费者,提高消费速度。
    2. 在消费者内开启线程池,加快消息处理速度。
    3. 扩大队列的容积,提高堆积上限。(采用惰性队列)

惰性队列特征:

接收到消息后直接存入磁盘而非内存

消费者要消费消息时才会从磁盘中读取并加载到内存中

支持数百万条的消息存储。

设置方式:

配置的方式 .lazy

注解的方式.value=lazy

相关推荐
小画家~6 分钟前
第四十六: channel 高级使用
java·前端·数据库
天天进步201519 分钟前
【Nanobrowser源码分析4】交互篇: 从指令到动作:模拟点击、滚动与输入的底层实现
开发语言·javascript·ecmascript
Li_yizYa19 分钟前
Redis-常见数据类型及应用场景
java·数据库·redis
麦兜*25 分钟前
【springboot】图文详解Spring Boot自动配置原理:为什么@SpringBootApplication是核心?
android·java·spring boot·spring·spring cloud·tomcat
console.log('npc')25 分钟前
vue2中子组件父组件的修改参数
开发语言·前端·javascript
码点26 分钟前
【无标题】日文字库Japan.ini
开发语言
IT=>小脑虎30 分钟前
2026版 Python零基础小白学习知识点【基础版详解】
开发语言·python·学习
rabbit_pro38 分钟前
Java使用Mybatis-Plus封装动态数据源工具类
java·python·mybatis
wjs202440 分钟前
抽象工厂模式
开发语言
lly20240641 分钟前
SVG 模糊效果详解
开发语言