ActiveMQ-同时从队列和主题消费

ActiveMQ-同时从队列和主题消费,activemq,Activemq,我们正在尝试使用activemq中的消息。生产者(我们无法控制)将不同的消息放入队列和主题中。作为消费者,我如何配置我的客户机以同时从队列和主题中消费?我能想到的唯一方法是创建两个不同的使用者,一个连接到队列,另一个连接到主题。 这种方法正确吗?或者我可以做些什么来创建一个同时听这两个声音的消费者 谢谢 KActiveMQ标准发行版与Apache Camel捆绑在一起 考虑到您正在运行标准的ActiveMQ,您可以向Camel添加一个小型路由,为您实现这一点 在/conf文件夹中编辑“camel

我们正在尝试使用activemq中的消息。生产者(我们无法控制)将不同的消息放入队列和主题中。作为消费者,我如何配置我的客户机以同时从队列和主题中消费?我能想到的唯一方法是创建两个不同的使用者,一个连接到队列,另一个连接到主题。 这种方法正确吗?或者我可以做些什么来创建一个同时听这两个声音的消费者

谢谢
K

ActiveMQ标准发行版与Apache Camel捆绑在一起

考虑到您正在运行标准的ActiveMQ,您可以向Camel添加一个小型路由,为您实现这一点

在/conf文件夹中编辑“camel.xml”

添加两条路线:

<route>
  <from uri="activemq:topic:someTopic"/>
  <to uri="activemq:queue:comboQueue"/>
</route>

<route>
  <from uri="activemq:queue:someQueue"/>
  <to uri="activemq:queue:comboQueue"/>
</route>

确保此camel.xml包含在ActiveMQ配置中,例如ActiveMQ.xml


现在,只需从“comboQueue”消费,您就可以在一个地方获得所有消息。

ActiveMQ标准发行版与Apache Camel捆绑在一起

考虑到您正在运行标准的ActiveMQ,您可以向Camel添加一个小型路由,为您实现这一点

在/conf文件夹中编辑“camel.xml”

添加两条路线:

<route>
  <from uri="activemq:topic:someTopic"/>
  <to uri="activemq:queue:comboQueue"/>
</route>

<route>
  <from uri="activemq:queue:someQueue"/>
  <to uri="activemq:queue:comboQueue"/>
</route>

确保此camel.xml包含在ActiveMQ配置中,例如ActiveMQ.xml


现在,只需使用“comboQueue”,您就可以在一个地方获得所有消息。

您可以使用ActiveMQ的功能实现这一点,该功能允许您在多个目的地和不同类型的目的地上进行侦听

您可以使用ActiveMQ的功能实现这一点,该功能允许您在多个目的地和不同类型的目的地上进行侦听

是的,两个端点有两个侦听器。是的,两个端点有两个侦听器。谢谢您的回复。不幸的是,我们(作为使用者)使用的activemq实例安装在我们无法控制的机器上。我们所能控制的只是代理连接URL。我们将无法更改任何activemq配置。有什么办法吗?没有。那你就做不了什么了。您需要设置两个侦听器。但是,您当然可以使用上述Camel配置运行本地ActiveMQ实例,以将两个不同的目的地合并到本地队列。只需在ActiveMQ中为远程ActiveMQ实例配置一个连接工厂<代码>这可能比简单地设置两个侦听器要复杂得多。谢谢您的回复。不幸的是,我们(作为使用者)使用的activemq实例安装在我们无法控制的机器上。我们所能控制的只是代理连接URL。我们将无法更改任何activemq配置。有什么办法吗?没有。那你就做不了什么了。您需要设置两个侦听器。但是,您当然可以使用上述Camel配置运行本地ActiveMQ实例,以将两个不同的目的地合并到本地队列。只需在ActiveMQ中为远程ActiveMQ实例配置一个连接工厂<代码>这可能比简单地设置两个侦听器更复杂、更棘手。。