首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >消息优先级在消息队列系统中本质上是不重要的吗?

消息优先级在消息队列系统中本质上是不重要的吗?
EN

Stack Overflow用户
提问于 2010-08-12 15:46:12
回答 4查看 2.9K关注 0票数 18

我看过的大多数消息传递系统似乎都有对优先级消息队列的基本支持。例如,AMQP仅specifies至少2个优先级。RabbitMQ,一个AMQP的实现,doesn't support任何优先级。在5.4版本中,ActiveMQ将在几天内为10个消息优先级提供getting support。10优先级是由JMS spec指定的。

非消息意义上的priority queue基于任意字段对其内容进行排序,该字段具有不受限制的优先级范围。为什么这样的实现不能作为消息传递系统的一部分?正如我在标题中所问的,优先级本质上是一个非消息传递的概念吗?

我意识到,一个答案可能是,优先级的概念引入了消息在处理较高优先级消息时在队列中无限延迟的可能性。还有其他原因吗?

EN

回答 4

Stack Overflow用户

发布于 2011-02-10 00:28:55

顺便说一句,ActiveMQ现在通过JMSPriority标头支持5.4.x中的priority messaging

通常有更好的技术来实现优先级消耗,而不是让message broker在消息到达时对某些缓冲区中的消息进行重新排序,例如having a dedicated consumer pool for high priority messages。那么,不管来自低优先级消息的噪声有多大,高优先级消息总是会被通过。

考虑到消息传递的异步特性,如果使用JMSPriority报头等,则很容易用低优先级消息填充缓冲区、网络管道和prefetch queues

票数 7
EN

Stack Overflow用户

发布于 2010-12-05 07:19:15

在我看来,这个想法可能更类似于“进程优先级”,而不是优先级队列中的优先级值。当然,这与JMS规范中关于它的一两句话是一致的,显然也与AMQP规范一致。

票数 1
EN

Stack Overflow用户

发布于 2010-12-18 06:59:43

人们必须小心,因为太多的优先级没有用到使用程序变得比浏览每条消息更繁重的程度。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3465675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档