如何在服务器和客户端的activemq之间使用camel
How to use camel between to server and client's activemq
我能够将消息从一个队列发送到同一 activemq 服务器中的另一个队列。
但我的要求是:
a)将有两个主机 - 我的系统(作为服务器)和虚拟盒子(作为客户端)。
b)两者都有自己的activemq队列和camel。
现在的问题是——
如何使用服务器的骆驼将消息从服务器的队列发送到客户端的队列?
反之亦然。
请帮帮我。任何解决方案将不胜感激。非常感谢
从 Camel 实例连接到不同的服务器是一个非常基本的概念。然而,它在一定程度上取决于你如何拥有它 configured/deployed。鉴于您的 Camel 运行 in Spring 在您的 ActiveMQ 中,您可以简单地设置两个 camel-activemq 组件。您需要提供正确的代理 URL、队列名称等。
<bean id="localamq" class="org.apache.activemq.camel.component.ActiveMQComponent" >
<property name="connectionFactory">
<bean class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="vm://localhost?create=false"/>
<property name="userName" value="${activemq.username}"/>
<property name="password" value="${activemq.password}"/>
</bean>
</property>
</bean>
<bean id="remoteamq" class="org.apache.activemq.camel.component.ActiveMQComponent" >
<property name="connectionFactory">
<bean class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="tcp://otherserver:61616"/>
</bean>
</property>
</bean>
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
<route>
<from uri="localamq:some.queue"/>
<to uri="remoteamq:some.other.queue"/>
</route>
</camelContext>
我能够将消息从一个队列发送到同一 activemq 服务器中的另一个队列。 但我的要求是: a)将有两个主机 - 我的系统(作为服务器)和虚拟盒子(作为客户端)。 b)两者都有自己的activemq队列和camel。
现在的问题是—— 如何使用服务器的骆驼将消息从服务器的队列发送到客户端的队列? 反之亦然。
请帮帮我。任何解决方案将不胜感激。非常感谢
从 Camel 实例连接到不同的服务器是一个非常基本的概念。然而,它在一定程度上取决于你如何拥有它 configured/deployed。鉴于您的 Camel 运行 in Spring 在您的 ActiveMQ 中,您可以简单地设置两个 camel-activemq 组件。您需要提供正确的代理 URL、队列名称等。
<bean id="localamq" class="org.apache.activemq.camel.component.ActiveMQComponent" >
<property name="connectionFactory">
<bean class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="vm://localhost?create=false"/>
<property name="userName" value="${activemq.username}"/>
<property name="password" value="${activemq.password}"/>
</bean>
</property>
</bean>
<bean id="remoteamq" class="org.apache.activemq.camel.component.ActiveMQComponent" >
<property name="connectionFactory">
<bean class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="tcp://otherserver:61616"/>
</bean>
</property>
</bean>
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
<route>
<from uri="localamq:some.queue"/>
<to uri="remoteamq:some.other.queue"/>
</route>
</camelContext>