MQ消息堆积如何解决?

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

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

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

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

惰性队列特征:

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

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

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

设置方式:

配置的方式 .lazy

注解的方式.value=lazy

相关推荐
名字还没想好☜7 小时前
Python f-string 进阶:数字格式化、对齐填充、调试 = 号与嵌套表达式
开发语言·数据库·python·字符串格式化·f-string
·薯条大王8 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
一壶浊酒..11 小时前
Scrape Webpack练习
开发语言·javascript·webpack
ZJH__GO11 小时前
网络编程v4pro--实现聊天室文件传输功能
java·服务器·网络·计算机网络
程序员黑豆11 小时前
Windows 系统 Java 环境变量配置全攻略:解决“不是内部或外部命令”
java·前端·ai编程
命运之光11 小时前
【C语言完整代码】就诊信息管理系统
java·c语言·开发语言
凤山老林11 小时前
Spring Boot @Async 线上实战:从默认配置到生产级线程池治理
java·spring boot·后端
命运之光11 小时前
【C语言完整代码】图书管理系统:图书馆场景下的增删改查实战
c语言·开发语言
猿长大人12 小时前
C# | Serilog 新手入门
开发语言·c#·.net·log
marvelyu12 小时前
每天10分钟学会OceanBase系列(Day 20):跨机房容灾实战——构建多数据中心高可用架构
java·大数据·数据库