ActiveMQ – отправка сообщения конкретному потребителю

StackOverflow https://stackoverflow.com/questions/2461154

  •  20-09-2019
  •  | 
  •  

Вопрос

Наличие одного брокера AMQ и подключенных 100 потребителей.Я бы отправил сообщение какому-то конкретному потребителю, чтобы другие потребители его не получили (фильтрация на стороне клиента не будет работать).

Самый простой способ — создать, например, виртуальные пункты назначения (назовите их очередь:потребитель-) и отправлять туда сообщения.Однако это приведет к появлению 100 новых очередей, что усложнит мониторинг.Есть ли другой способ сделать это с одной очередью?

Это было полезно?

Решение

Вы можете использовать JMS селекторы.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top