我将Apollo代理配置为stomp服务器。现在我想配置一个ActiveMQ代理,它链接到Apollo代理并在两个方向上启用消息传播。 也就是说,我希望Apollo经纪人和ActiveMQ经纪人兼顾消费者和生产者。
ActiveMQ经纪人的这个网络连接器配置是否符合我的要求?
<networkConnectors>
<networkConnector name="linkToApolloBroker"
uri="static:(stomp://apollo_broker_ip:61000)"
networkTTL="3"
duplex="true" />
</networkConnectors>
<persistenceAdapter>
<kahaDB directory="${activemq.data}/dynamic-broker1/kahadb"/>
</persistenceAdapter>
...
<transportConnectors>
<transportConnector name="stomp" uri="stomp://0.0.0.0:61613"/>
</transportConnectors>
实际上,我需要Apollo为Web提供服务,同时将消息传递给ActiveMQ代理。如果我有2个经纪人互相交谈,他们的本地客户可以直接访问本地持久的队列,并且在一定程度上可以免受网络波动的影响。
答案 0 :(得分:2)
ActiveMQ和Apollo之间的经纪人配置网络具有互操作性。您可以使用ActiveMQ的JMS Bridge功能在两者之间配置桥接,因为Apollo确实支持openwire。您的配置无效。
查看JMS to JMS bridge文档。
Apache Camel也是您问题的潜在解决方案。你可以创建一个符合你想要的Camel路线。