首页 新闻 会员 周边

RabbitMQ 优先级队列低优先级消息长期被高优先级消息阻塞

0
悬赏园豆:40 [已解决问题] 解决于 2017-12-26 10:30

之前看了一篇文档https://q.cnblogs.com/q/89589/

提到:

如果优先队列设置了message-ttl,则由于server的ttl清理是从head方向检测处理的,低优先级的过期消息可能会一直存在而无法被清理,且会被统计(如ready的消息数,但不会被deliver)。

目前遇到类似问题,还没有好的解决办法,rabbitMq中优先级队列功能,低优先级的消息也许会被高优先级长期阻塞,希望实现获取到消息时长,在消息长期排队未处理后提升低优先级消息的优先级等级

费斯科的主页 费斯科 | 初学一级 | 园豆:143
提问于:2017-12-20 09:51
< >
分享
最佳答案
0

这个没太好办法,本身mq就是first in first out的,如果要mq本身来根据条件自己对消息提升位置本身就和这个意图相左了。

实际上如果碰到你这种情况应该是mq后面消费速度太慢,解决这个问题是才正道。

收获园豆:40
Daniel Cai | 专家六级 |园豆:10424 | 2017-12-20 16:21

谢谢你的回复,目前看来是没有什么好的办法,RabbitMQ自带的优先级通过时间动态调整。

费斯科 | 园豆:143 (初学一级) | 2017-12-21 10:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册