Как сгруппировать разный кеш в кластер
Предположим, что четыре экземпляра WildFly 8 запущены на двух машинах в одной сети. Давайте назовем их A, B, C и D. A, B работает на machine1 и C, D на machine2.
В случае кластеризации UDP он отлично работает с многоадресным адресом.
При использовании TCP я сталкиваюсь с некоторыми проблемами при кластеризации. Я хочу, чтобы A, C считались одним, а B, D - единым. Рассмотрим A, C в качестве серверов транзакций и B, D в качестве серверов отчетов. A, C имеют имя кеша lrpcache
и B, D имеют кэш с именем lrpcache1
и начал с ha
профиль. Когда я запускаю сервер A, C ищет кэш в B, D, так как они находятся в одном кластере.
Когда я подключаю все, я получаю следующее предупреждение:
Отмена запроса на обнаружение для кластера 'lrpcache1' из 54a568fd-b07a-dc68-01f3-0d978debf697; наше имя кластера 'lrpcache'. Пожалуйста, аккуратно разделите ваши кластеры.
Я хочу, чтобы A, C работали независимо от B, D.
Серверы были запущены как standalone -c standalone-ha.xml -b 192.x.x.x
,
1 ответ
Уникальный адрес MPING решил эту проблему
Узел А, С использует
<socket-binding name="jgroups-mping" port="0" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45700"/>
Узел B,D использует
<socket-binding name="jgroups-mping" port="0" multicast-address="${jboss.default.multicast.address:230.0.0.5}" multicast-port="45700"/>
Таким образом, узел A,C не ищет кеш в B,D