JMS优先级由自定义标头设置

时间:2010-06-07 08:54:21

标签: java jms priority-queue

是否有办法根据自定义标头值优先处理JMS代理中的消息?

例如:“购买日期”。得到最早的等等。

请告知。

2 个答案:

答案 0 :(得分:1)

在JMS标准的范围内无法做到这一点。它不支持这样的自定义路由规则。

但是,许多实现JMS的产品都支持某种基于规则的路由/优先级排序,因此您应该查看产品文档。

答案 1 :(得分:0)

您可以使用Apache Camel或ServiceMix等操作来根据消息中的任何内容操作JMSPriority标头。 ActiveMQ内置了骆驼,我从那里开始。

如果我们不谈论开源解决方案,Tibco BusinessWorks(不是粉丝)也应该工作。

我认为你不会直接在JMSProvider中找到它,这更像是一个ESB /消息路由器。

当然,在您实际发送消息之前,您可以在发送之前将业务规则应用于JMSPriority标头。注意:我认为此时ActiveMQ实际上并不支持JMSPriority标头。