Как создать тему псевдонима, указывающую на очередь в IBM Websphere MQ?

Я пытаюсь отправить сообщения между приложением, использующим очереди WebSphere MQ, и приложением nodeJS, использующим темы Websphere MQ, по протоколу MQTT.

Я знаю, что мы можем создать очередь псевдонимов:

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

Теперь мне нужна противоположная процедура:

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

Конфигурация:

  • WebSphere v7.5
  • Узел v5.5.0
  • Протокол MQTT v3

person dng    schedule 21.06.2016    source источник
comment
Не могли бы вы дополнить свой вопрос более подробной информацией о сценарии? Как тема псевдонима, указывающая на очередь, помогает в вашем случае?   -  person Shashi    schedule 21.06.2016


Ответы (1)


Наконец я нашел ответ.

Чтобы решить эту проблему, мне пришлось создать подписку, указав источник темы и место назначения очереди. Для этого в IBM WebSphere MQ Explorer:

  • Зайдите в навигатор -> IBM WebSphereMQ -> Менеджеры очередей -> Выберите свою очередь -> Подписки -> Создать -> Подписка
  • Введите название вашей подписки -> нажмите «Далее»
  • Введите / выберите атрибут по умолчанию "SYSTEM.DEFAULT.SUB"
  • Введите название темы (вы можете выбрать его среди существующих в кнопке справа)
  • Введите имя существующего места назначения очереди
  • Нажмите "Завершить".

Вот и все ! Для этого были минимальные требования, но вы можете указать другие варианты. Вы можете проверить свойства подписки в документации по этой ссылке: https://www.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.explorer.doc/e_properties_subs.htm

Примечание. Слова в инструкциях могут немного отличаться, потому что я перевел функциональные возможности программного обеспечения Websphere MQ с французского на английский, чтобы ответить на этот пост.

(Edit) Объяснение:

Мое приложение NodeJS должно обмениваться данными в обоих направлениях (публикация / получение) с другим приложением. Как сказал @Shashi в комментариях, протокол MQTT в основном работает только с моделью публикации / подписки. Однако он может связываться с очередью благодаря функции «Подписка» программного обеспечения IBM WebSphere MQ, как я объяснял ранее.

На самом деле, насколько я понимаю, функция «Подписка» является своего рода «мостом» связывания / преобразования темы (для NodeJS) в целевую очередь (для приложения).

Это противоположно тому, чем может быть AliasQueue для темы в IBM Websphere MQ:

"Псевдоним также может разрешаться в тему. Если приложение в настоящее время помещает сообщения в очередь, его можно сделать для публикации в теме, сделав имя очереди псевдонимом для темы. Никаких изменений в коде приложения не требуется. " (из документации)

person dng    schedule 21.06.2016
comment
Ваше приложение NodeJS публикует или принимает сообщения? Насколько мне известно, протокол MQTT работает только для модели публикации / подписки, а не для очереди. Поэтому интересно, как приложение NodeJS сможет получать сообщения из очереди. - person Shashi; 22.06.2016