Интеграция приложений на основе WebSphere MQ



              

Примеры работы механизмов публикация-подписка


Теперь после знакомства с технологией публикация-подписка следует рассмотреть работу модели Publish/Subscribe на простых примерах. Для этого понадобиться инсталлировать SupportPacs MA0C: WebSphere MQ (WebSphere MQ) Publish/Subscribe с сайта ИБМ:http://www-306.ibm.com/software/integration/support/supportpacs/category.html

После этого можно стартовать брокер на менеджере очередей командой:

strmqbrk -m QMgrName

Для отображения состояния брокера можно использовать команду dspmqbrk:

dspmqbrk -m QMgrName

В ответ появиться следующее сообщение:

WebSphere MQ message broker for queue manager QMgrName running

Теперь брокер готов получать команды от издателей и подписчиков.

На каждом менеджере может быть стартован только один брокер.

В менеджере есть необходимые системные очереди, которые можно увидеть командой

runmqsc QMgrName display qlocal(SYSTEM.BROKER.*) end

Следует сразу отметить, что завершение работы брокера осуществляется командой endmqbrk перед окончанием работы менеджера: endmqbrk -m QMgrName.

Работу издателя можно продемонстрировать с помощью программы amqsgama, предложенной в SupportPacs MA0C в качестве теста. Эта программа издателя из перечня спортивных тем для подписки (табл.10.1) помещает на брокер сообщения о футбольных матчах (Sport/Soccer/Event/ - в таблице данная тема выделена курсивом) и проверяет ответы брокера.

Таблица 10.1. Возможные спортивные темы для подписки

спорт/футбол/* спорт/теннис/* спорт/баскетбол/*

спорт/футбол/расписание игр спорт/футбол/события спорт/футбол/обзоры

Формат запуска программы:

amqsgama TeamName1 TeamName2 QMgrName

Результаты работы программы, моделирующей случайным образом забивание голов той или иной командой, выглядит следующим образом (рис. 10.3):

Результаты работы программы издателя

Рис. 10.3.  Результаты работы программы издателя

Для работы программы необходимо создание очереди: SAMPLE.BROKER.RESULTS.STREAM.

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




Содержание  Назад  Вперед