У меня есть тема JMS в сети ActiveMQ кластера брокеров (иначе распределенная тема). У меня есть внешний потребитель JMS (портал Weblogic), который должен подписаться на эту тему и получить все сообщения, отправленные в нее (через всех брокеров).
Если потребитель подпишется на тему на одном из брокеров, то это только получит подмножество сообщений, что брокер получает, корректный?
Я предполагаю, что мог создать потребителя для каждого брокера и агрегировать сообщения вместе, но затем я нахожусь также на рычаге для того, чтобы заниматься проблемами соединения и должным быть знать, какие брокеры доступны и т.д.
Вопрос, там способ настроить сеть брокеров или потребителя для получения всех сообщений от распределенной темы JMS?
Если потребитель подписывается на тему на одном из брокеров, он получит только подмножество сообщений , которые получает брокер, верно?
Технически да, но брокерская сеть отвечает за то, чтобы знать, какие потребители заинтересованы в каких сообщениях, и следить за тем, чтобы правильные брокеры получали нужные сообщения.
Обычно это означает, что каждый брокер получает каждое сообщение, но если у брокера есть только потребители с заданным селектором сообщений, он будет получать только сообщения, которые интересуют этих клиентов.
На практике это означает, что вы выбираете broker, подключитесь к нему, и позвольте сети брокеров разобраться в этом между собой. Теоретически.
Вы просто подключаетесь к кластеру. Кластер должен доставить сообщения потребителю.