Обмен сообщениями JMS между управляемыми серверами в weblogic
Примечание. У меня есть клиент, у которого нет лицензии кластера weblogic. Мы настроили два управляемых сервера, и у каждого из них есть JMSServers.
Проблема: информация кэшируется из базы данных. Когда кто-то изменяет запись в базе данных с помощью бэкэнда, появляется уведомление об обновлении кэша. Это уведомление должно быть опубликовано в очереди или теме на каждом из управляемых серверов.
Я пробовал тему SAF, но она не могла отправлять сообщения в локальную и удаленную тему.
Как надежно обмениваться сообщениями между двумя управляемыми серверами без кластера.
1 ответ
Это то, что я сделал.
Предполагая, что есть три управляемых сервера weblogic (MSERVER-01, MSERVER-02, MSERVER-03), и человек, который читает это сообщение, знает, как создать домен, управляемый сервер, JMS-сервер, модуль JMS, фабрику соединений JMS, тему JMS, тему JMS. Мосты сообщений и последние Мосты.
Шаги для решения проблемы:
Создайте три JMSServer, по одному для каждого из серверов, перечисленных выше.
Создайте 3 модуля JMS для каждого сервера JMS
В каждом модуле JMS создайте фабрику соединений с целью по умолчанию
В каждом модуле JMS создайте 2 ТЕМЫ, одну с именем NOTIFICATION_MANAGER_TOPIC, другую MSG_PROCESSOR_TOPIC.
Создайте пункты назначения моста исходного сообщения, указывающие на каждый из NOTIFICATION_MANAGER_TOPIC как N1, N2, N3
Создайте целевые адресаты моста сообщений, указывающие на каждый из MSG_PROCESSOR_TOPIC как P1, P2, P3
Создайте мосты от N1 до P1, от N1 до P2, от N1 до P3
Создайте мосты от N2 до P1, от N2 до P2, от N2 до P3
Создайте мосты от N3 до P1, от N3 до P2, от N3 до P3
Как только мосты сообщений будут готовы, вы можете использовать следующий пример кода для отправки сообщений на N1 (NOTIFICATION_MANAGER_TOPIC), и вы увидите, что сообщения передаются во все MSG_PROCESSOR_TOPIC, то есть P1, P2, P3.
Примечание. Мосты не идеальны для связи внутри домена. Это просто обходной путь для людей, у которых нет лицензии кластера weblogic, которая требуется для создания распределенных тем. Также вы можете попробовать SAF (Store and Forward) вместо Bridge.