RabbitMQ惰性队列

使用场景:消费者宕机、维护关闭 导致 消息堆积时

默认情况下,消息是存储在内存中,使用惰性队列(lazy)可以将消息保存在磁盘中,减少内存开销,防止消息丢失,避免因消费者宕机,消息堆积,在3.6.0之前的版本无序做任何更改。

惰性队列会把消息缓存在磁盘中,内存中保留对应的索引,需要消费这些消息的时候再通过索引到磁盘中读取

惰性队列比较慢,需要根据内存中的索引到磁盘读取消息

可以通过调用cannel.queueDeclare方法的时候在参数中设置,x-queue-mode

也可以通过policy的方式设置

如果两种都设置,Policy方式优先级更高

java代码

 

 内存开销对比

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值