Просто хочу подтвердить правильный способ доставки сообщений MQ на узел MQOutput. Недавно натолкнулась на ситуацию, когда я почувствовал, что немного запутался. Вот сценарий.Отправка сообщений в узел MQOutput
У меня есть локальная очередь на Qmgr, скажем (A), которая получает сообщения от приложений и имеет локальный брокер, связанный с этим qmgr (A), с развернутым потоком сообщений, который потребляет беспорядки из этой очереди и переносит его на другой локальная (LB) очередь в диспетчере очереди (B).
Чтобы успешно доставлять сообщения QMGR (B) я должен
Создание определения удаленной очереди на Qmgr (A) с именем очереди передачи, совпадающий с именем удаленного менеджера очередей, здесь (B) значение узла MQOutput устанавливается как, queue-> имя удаленной очереди на определении (а) и значение менеджера очередей, как пустой
илисоздать только очередь передачи, которая соответствует с именем очереди имени удаленного менеджера, здесь (B). Значение узла MQOutput установлено как queue-> target local queue (L.B) и значение менеджера очереди как (B).
Когда я следовать с первым процессом, заметил сообщения идущих назначений и, когда я следовать с поздним, заметил сообщения сидит в самой локальной очереди.
Есть ли необходимость всегда создавать «n» количество удаленных определений очереди, когда нужно отправлять сообщения в «n» количество локальных очередей?
Просьба направлять меня, чтобы лучше понять это. Заранее благодарю каждого из вас.
Благодарим за ваши предложения по поводу этого Морага, его изображение теперь совершенное. Да, как вы уже упоминали, это было siiting в очереди передачи. Канал, созданный для этой цели, использовал другую очередь XMIT, отличную от ожидаемой. Покончил с этим, чтобы использовать правильный и теперь работающий. Каждый раз, когда я думал, что удаленная очередь используется здесь. В конце концов вы поняли, что удаленные очереди не обязательно необходимы для доставки сообщений в этом сценарии. Еще раз спасибо. –
Также @Morag Hughson, я буду очень рад, если я точно знаю, как это работает. Мы явно не указываем локальную очередь на очередь передачи, как это делаем с определением очереди Remote. Но в этом случае, как MQ работает, чтобы выбрать msgs из локальной очереди для передачи очереди, чтобы доставить ее до места назначения? Еще раз спасибо. –
Менеджер очередей проходит процесс, называемый «разрешение имен в очереди», чтобы узнать, в какую очередь передачи помещается сообщение. Если вы использовали объект QREMOTE, он будет выглядеть там для XMITQ, если вы используете имя очереди и имя менеджера очереди напрямую, оно использует очередь передачи с тем же именем. Существует множество других дел. читайте о «разрешении имен в очереди», http://www.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.ref.con.doc/q081570_.htm –