项目中需要用到ActiveMQ的这个特性,在官网上找到了这篇文档,简单翻译了下,原文见:http://activemq.apache.org/composite-destinations.html
从v1.1开始,ActiveMQ就已经支持一种名为组合目标(composite destinations)的技术。这种技术可以使一个虚拟的JMS目标用来表示一个JMS目标的集合。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
例如可以使用组合目标在一次操作中向12个物理队列发送消息,或者在一次操作中向一个主题(topic)和一个队列(queue)发送消息。
要实现这种功能,我们只需要在创建一个目标(destintation)时,或者在JNDI中注册目标时,用分隔符”,”来指定要组合的那些目标就可以了,例如目标
FOO.A,FOO.B,FOO.C
代表着3个不同的目标。我们可以像下面这样使用一个队列或者主题来代表它们这个集合:
//
sendto3queuesasonelogicaloperation
Queuequeue
=
new
ActiveMQQueue(
"
FOO.A,FOO.B,FOO.C
"
);
producer.send(queue,someMessage);
如果你想混合使用不同类型的目标,只需要在其前面加上前缀queue:// 或 topic://就可以了,例如:
//
sendtoqueuesandtopiconelogicaloperation
Queuequeue
=
new
ActiveMQQueue(
"
FOO.A,topic://NOTIFY.FOO.A
"
);
producer.send(queue,someMessage);
从v1.1开始,ActiveMQ支持组合目标技术,允许通过单一逻辑操作向多个物理队列或主题发送消息。只需在创建目标时使用分隔符指定要组合的目标即可。
6407

被折叠的 条评论
为什么被折叠?



