java - 以编程方式让一个队列订阅多个队列

标签 java activemq message-queue messaging

我有两个虚拟主题:T1、T2。我有一个名为 FOO 的消费者。

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.T1Consumer.FOO.VirtualTopic.T2

这样我就可以创建一个仅指向“FOOQueue”的消费者并获取所有消息(将来我可以从“FOOQueue”订阅其他队列并从其他队列获取消息)。

最佳答案

您要求的内容听起来像 Composite Destinations如 ActiveMQ 代理配置中所定义。您将定义一个复合目标,其中包含从其他一些队列转发的消息。如果您稍后需要添加更多转发,这当然需要重新配置代理。

关于java - 以编程方式让一个队列订阅多个队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54081110/

相关文章:

maven - 无法使用 jmeter-maven-plugin 实例化类 : org. apache.activemq.jndi.ActiveMQInitialContextFactory

c# - 代码运行时的 ASP.NET 应用程序日志/进度条

java - "Exception in thread "主要 "java.lang.ArrayIndexOutOfBoundsException: 178"错误,不知道为什么

ubuntu - 如何通知我的服务器应用程序?

java - 将包含 NULL 的字节数组转换为字符串

java - 当 ActiveMQ 故障转移传输失败时,Spring Boot 应用程序不会启动

c# - 如何创建自定义消息泵?

java - 如何实现请求回复模式

javascript - JSON JavaScript 不起作用?

java - 尝试从 jar 文件运行时,Spring Boot 应用程序不会运行