У нас есть два экземпляра activemq, настроенные как кластер, и кластер из четырех экземпляров glassfish, которые должны быть подключены к ОДНОМ activemq в любой момент времени. Если activemq01 недоступен, все четыре экземпляра glassfish должны переключиться на activemq02.
Я несколько раз замечал, что по неизвестной причине один из (случайных) экземпляров Glassfish будет переключаться на activemq02, а оставшиеся три экземпляра будут по-прежнему подключены к activemq01, даже если activemq01 НЕ был отключен, и все экземпляры Glassfish должны были прослушивать на activemq01.
Журналы не указывают ничего, что могло бы объяснить это поведение, все, что я могу видеть, если этот экземпляр Glassfish не может подключиться к activemq01 и выполнить сбой на activemq02.
Были ли у кого-нибудь такие же или похожие проблемы? Любая помощь / совет приветствуются.
Вот мои конфиги activemq:
activemq01:
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd">
файл: $ {activemq.base} /conf/credentials.properties
<managementContext>
<managementContext connectorPort="1093" createConnector="true"/>
</managementContext>
<networkConnectors>
<networkConnector name="amq-prod" uri="static://(tcp://127.0.0.1:61616,tcp://192.168.0.167:61616)" />
</networkConnectors>
<persistenceAdapter>
<kahaDB directory="${activemq.base}/data/kahadb"/>
</persistenceAdapter>
<plugins>
<loggingBrokerPlugin logAll="false" logConnectionEvents="true"/>
</plugins>
<systemUsage>
<systemUsage>
<memoryUsage>
<memoryUsage limit="2048 mb"/>
</memoryUsage>
<storeUsage>
<storeUsage limit="2 gb" name="prod"/>
</storeUsage>
<tempUsage>
<tempUsage limit="2000 mb"/>
</tempUsage>
</systemUsage>
</systemUsage>
<transportConnectors>
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616" updateClusterClients="true" />
</transportConnectors>
#
activeMQ02:
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd">
файл: $ {activemq.base} /conf/credentials.properties
<managementContext>
<managementContext connectorPort="1093" createConnector="true"/>
</managementContext>
<networkConnectors>
<networkConnector name="amq-prod" uri="static://(tcp://127.0.0.1:61616,tcp://192.168.0.166:61616)" />
</networkConnectors>
<persistenceAdapter>
<kahaDB directory="${activemq.base}/data/kahadb"/>
</persistenceAdapter>
<systemUsage>
<systemUsage>
<memoryUsage>
<memoryUsage limit="2048 mb"/>
</memoryUsage>
<storeUsage>
<storeUsage limit="2 gb" name="prod"/>
</storeUsage>
<tempUsage>
<tempUsage limit="2000 mb"/>
</tempUsage>
</systemUsage>
</systemUsage>
<transportConnectors>
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616" updateClusterClients="true" />
</transportConnectors>
версия activeMQ - 5.4.1