大多数我看过的消息系统似乎都只有基本的、如果有的话,对于优先消息队列的支持。例如,AMQP只规定了最低的2个优先级。RabbitMQ,作为AMQP的实现,不支持任何优先级。ActiveMQ将在5.4版本中在几天后支持10个消息优先级。10个优先级是由JMS规范指定的。
在非消息传递的意义上,优先队列根据一个任意字段的优先级进行内容排序,而该字段的优先级范围没有限制。为什么像这样的实现不作为消息传递系统的一部分存在呢?正如我在标题中所问,优先级是否本质上是一个非消息传递的概念?
我意识到一个可能的答案是,优先级的概念引入了消息在队列中无限等待的可能性,而较高优先级的消息则被处理。还有其他原因吗?
在非消息传递的意义上,优先队列根据一个任意字段的优先级进行内容排序,而该字段的优先级范围没有限制。为什么像这样的实现不作为消息传递系统的一部分存在呢?正如我在标题中所问,优先级是否本质上是一个非消息传递的概念?
我意识到一个可能的答案是,优先级的概念引入了消息在队列中无限等待的可能性,而较高优先级的消息则被处理。还有其他原因吗?