MQ消息堆积如何解决?

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

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

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

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

惰性队列特征:

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

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

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

设置方式:

配置的方式 .lazy

注解的方式.value=lazy

相关推荐
曙曙学编程1 分钟前
初级数据结构——树
android·java·数据结构
小技与小术4 分钟前
数据结构之树与二叉树
开发语言·数据结构·python
BestandW1shEs7 分钟前
彻底理解消息队列的作用及如何选择
java·kafka·rabbitmq·rocketmq
爱吃烤鸡翅的酸菜鱼9 分钟前
Java算法OJ(8)随机选择算法
java·数据结构·算法·排序算法
码蜂窝编程官方12 分钟前
【含开题报告+文档+PPT+源码】基于SpringBoot+Vue的虎鲸旅游攻略网的设计与实现
java·vue.js·spring boot·后端·spring·旅游
hccee26 分钟前
C# IO文件操作
开发语言·c#
Viktor_Ye29 分钟前
高效集成易快报与金蝶应付单的方案
java·前端·数据库
hummhumm31 分钟前
第 25 章 - Golang 项目结构
java·开发语言·前端·后端·python·elasticsearch·golang
一二小选手35 分钟前
【Maven】IDEA创建Maven项目 Maven配置
java·maven
J老熊41 分钟前
JavaFX:简介、使用场景、常见问题及对比其他框架分析
java·开发语言·后端·面试·系统架构·软件工程