2012-01-30 2 views
0

У меня есть сеть брокеров со следующей конфигурациейActiveMQ сеть брокеров: случайный conectivity с rebalanceClusterClients и updateClusterClients

<transportConnectors> 
     <transportConnector name="tomer-amq-test2" uri="tcp://0.0.0.0:61616" updateClusterClients="true" rebalanceClusterClients="true" updateClusterClientsOnRemove="true"/> 
    </transportConnectors> 

Я ожидаю, что когда я подключаю с помощью URL

failover:\(tcp://tomer-amq-test2:61616\)?backup=true 

Брокера обновить клиент с полным списком брокеров, это тоже связано, и клиент должен подключиться к одному случайному, а к второму как к резервному
однако этого не происходит, и клиент подключается к указанному броузере только в указанном торгах

help any?
Tx Томер

ответ

2

выяснили проблему (по крайней мере, на мой окр)
когда брокер обновляет другой брокер, что это вверх, он идентифицирует себя с помощью имени сервера.
раз имя сервера всех брокеров было добавлено в/и т.д./хосты на стороне клиента, все было хорошо
:)
Я думаю, что это плохая практика, и брокер должен идентифицировать себя с помощью IP, а не по имени хоста

я бегу ActiveMQ 5.5.1 на Ubuntu 10.4

0

Ваш клиент будет обновляться только с полным брокерско-список, если некоторые или следующие свойства являются истинными: updateClusterClients rebalanceClusterClients и updateClusterClientsOnRemove.

Вы должны установить их вручную на своем клиенте, поскольку по умолчанию они являются ложными.

см: http://activemq.apache.org/failover-transport-reference.html

+0

Я думаю, вы ошибаетесь: в «updateClusterClients rebalanceClusterClients и updateClusterClientsOnRemove» устанавливаются на стороне сервера (и вы можете видеть, что они настроены на истинно в моей конфигурации). клиентская сторона не поддерживает эти свойства – Tomer

+0

мой плохой. ты прав. – Laures

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