Отработка отказа сервера приложений JBoss - PullRequest
1 голос
/ 16 декабря 2010

У меня есть вопрос по поводу отработки отказа на сервере приложений JBoss (5.1), на котором работает JBoss ESB 4.9. Начну с диаграммы:

diagram

У нас есть устаревшее приложение («Legacy Producer»), которое генерирует данные об устаревшем транспорте («Legacy Transport»). Мы написали службу ESB («шлюз»), которая прослушивает устаревший транспорт и помещает полученные сообщения в ESB. Затем сообщения следуют нескольким шагам оркестровки, которые нужно обработать.

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

Как правильно реализовать этот тип аварийного переключения?

1 Ответ

1 голос
/ 07 февраля 2011

Правильный способ - использовать кластеризацию JMS между узлами.Вам нужно ознакомиться с документацией AS / JBoss Messaging (или HornetQ), чтобы узнать, как это сделать. ESB не содержит кратких инструкций для демонстрации этого.

Для публикации информации jUDDI на обоих узлах может потребоваться несколько шагов, но в руководствах есть инструкции, как это сделать.Посмотрите Руководство программиста "7.1. Поддержка отработки отказа и балансировки нагрузки"

...