2013-02-22 2 views
0

У меня есть брокер Apollo, настроенный как стоп-сервер. Теперь я хочу настроить брокер ActiveMQ, который связывается с брокером Apollo и разрешает распространение сообщений в обоих направлениях. То есть, я хочу, чтобы брокер Apollo и брокер ActiveMQ работали как потребители, так и производители.Настройка дуплексного коннектора для связи с Apollo Broker

Будет ли эта конфигурация сетевого соединителя в брокере 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 предоставлять услуги по полотну при передаче сообщений туда и обратно в ActiveMQ брокера. Если у меня есть 2 брокера, которые разговаривают друг с другом, их локальные клиенты могут иметь прямой доступ к локально сохраненным очередям и продлевать свой иммунитет к колебаниям сети.

ответ

2

Существует функциональная совместимость в сети конфигурации брокеров между ActiveMQ и Apollo. Возможно, вы сможете настроить мост между ними с помощью функции JMS Bridge ActiveMQ, поскольку Apollo поддерживает openwire. Конфигурация у вас не будет работать.

Посмотрите на документацию JMS to JMS bridge.

Apache Camel также является потенциальным решением вашей проблемы. Возможно, вы можете создать маршрут Camel, который сделает то, что вы хотите.

Смежные вопросы