ActiveMQ Advisory Темы для соединений, не перенаправленных в сеть брокеров? - PullRequest
1 голос
/ 25 июня 2010

Я работаю над приложением, в котором мы хотим отслеживать вход / выход из клиентов.Поскольку ActiveMQ содержит консультативные темы, которые предупреждают вас о новых подключениях и удалении подключений, идея заключалась в том, чтобы использовать эти консультативные сообщения (ActiveMQ.Advisory.Connection).Во время разработки это работало нормально, но теперь, когда мы собираемся в производство в нашей сети брокеров, мы заметили, что сообщения от удаленных брокеров в сети не доходят до нашего потребителя.

Наша настройка:

Производитель |Брокеры A и B (ведущий подчиненный) на сайте 1 -> У них есть дуплексный сетевой соединитель с нашими публичными брокерами (C & D)

Брокер C и D (снова ведущий ведомый) на сайте 2

и привязаны к C и D, у нас есть «потребители», которым мы хотим знать информацию о входе / выходе из системы.

Когда мы посмотрим на консультативную тему в консоли администратора на брокере A, мыувидеть подписчика, и мы получим сообщения для входа, если мы позволим потребителю подключиться.На Брокере C я не вижу подписчиков по консультативной теме, и когда потребители входят / выключаются, мы не видим консультативного сообщения.

Это поведение по умолчанию или я пропускаюконфиг?

1 Ответ

1 голос
/ 21 марта 2013

Есть несколько мест, которые вам нужно искать:

  • Убедитесь, что конфигурация вашего брокера не отключает их: в конфигурации вашего брокера (A, B, C, D) проверьте, что рекомендациине отключены (мы не должны получать <broker advisorySupport="false">. Обычно это, кажется, уже проверено
  • Убедитесь, что ваш код не отключает его broker.setAdvisorySupport(false);. Это не должно быть основной причиной, так какработает в среде разработки
  • Являются ли ваши пункты назначения динамичными? Проверьте следующую страницу Сеть брокеров , особенно раздел "Динамические сети"
...