适用于AMQP的JMS类消息选择器(ActiveMQ / RabbitMQ)

时间:2014-03-27 15:24:28

标签: jms rabbitmq amqp

是否有类似于RabbitMQ的JMS消息选择器?或者必须编写一些代码来解析并选择消息?

感谢。

2 个答案:

答案 0 :(得分:4)

它被称为" amqp路由键"。

你可以在这里找到不同的东西:

http://www.wmrichards.com/amqp.pdf

你可以在这里找到关于路由键的一些例子:

http://www.rabbitmq.com/tutorials/tutorial-four-python.html

答案 1 :(得分:1)

如果选择器始终位于单个字符串字段上,则具有直接/主题交换的AMQP路由键可以正常工作。如果您的选择器的格式为message_type = 'foo',那么您可以使用message_type作为路由密钥。

如果邮件过滤器使用多个/不同的字段,那么您可以使用amq.match交换,它将匹配任何或所有标头值的邮件路由到相关队列。这将处理诸如field1 = 'value' OR field2 = 'value'之类的选择器以及不同消费者根据不同属性选择性消费的情况。

我认为JMS消息选择器还允许您执行更复杂的逻辑和比较运算符,例如大于,小于等等。我还没有找到与AMQP / RabbitMQ相同的。