java有一个队列订阅多个队列,ProgramMaticali
我有两个虚拟主题:T1,T2。我有一个消费者叫福
session.createTopic("VirtualTopic.T1");
session.createTopic("VirtualTopic.T2");
有了它,我可以使用以下命令获取每个队列的消息:
destination = session.createQueue("Consumer.FOO.VirtualTopic.T1");
consumer = session.createConsumer(destination);
Message msg = consumer.receiveNoWait();
destination = session.createQueue("Consumer.FOO.VirtualTopic.T2");
consumer = session.createConsumer(destination);
Message msg = consumer.receiveNoWait();
有没有一种方法可以将新队列(我们称之为“FOOqueue”)订阅到以前的队列Consumer.FOO.VirtualTopic.T1
和Consumer.FOO.VirtualTopic.T2
中强>
通过这种方式,我可以创建一个只指向“FOOQueue”的消费者并获取所有消息(将来我可以从“FOOQueue”订阅其他队列并从其他队列获取消息)
# 1 楼答案
您所要求的听起来像ActiveMQ代理配置中定义的Composite Destinations。您可以定义一个复合目的地,该目的地由从其他队列转发的消息组成。如果以后需要添加更多转发,这当然需要重新配置代理