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


Состояние каналов. Создание интерфейсов передачи сообщений


Как говорилось в предыдущей лекции, сообщения передаются с помощью каналов, с одинаковыми именами, расположенными как на одном, так и на другом менеджере. Для управления процессом старта каналов существует специальная служба, которая называется Channel initiator. На платформе Windows NT она запускается автоматически при старте менеджера с помощью WebSphere MQ Explorer. На других платформах она запускается с помощью команды runmqchi (на AS/400 - strmqmchi). На менеджере, отправляющем сообщение, должен быть создан канал отправитель, на менеджере получателе, соответственно, получатель. Рассмотрим подробнее работу пар каналов.

Sender => Receiver

Наиболее распространенная пара. Sender канал инициирует соединение с receiver каналом, затем передает сообщения.

Server => Receiver

В данном случае server канал выполняет роль sender канала. Пара имеет право на существование, но лучше использовать связку Sender => Receiver.

Server => Requester

В этой паре requester канал инициирует соединение, затем server канал начинает передачу данных.

Sender => Requester

Requester канал инициирует соединение в случае разрыва с sender каналом. Sender канал в свою очередь инициирует соединение с requester каналом, и только после этого начинается процесс передачи.

Каналы могут находиться в следующих состояниях.

Initialising - WebSphere MQ делает попытку произвести старт канала.

Starting - канал начал процесс старта и ждет установки соединения (активации слота).

Binding - после активации слота идет попытка установления соединения и передача данных инициации между каналами.

Requesting - requester канал ждет ответа от sender канала.

Running - состояние при котором либо идет передача данных, либо канал отправитель ждет сообщений из трансмиссионной очереди. Единственное состояние каналов отправителей, при котором возможна передача данных.

Paused - канал ожидает истечения времени, указанного в атрибуте Message retry interval.

Stopping - канал переходит в это промежуточное состояние в процессе остановки канала командой MQSC stop channel, либо при возникновении какой-либо ошибки.

Retrying - ожидание очередной попытки старта канала с помощью Channel initiator.

Stopped - канал остановлен. Стартовать его можно либо с помощью WebSphere MQ Explorer либо с помощью команды MQSC start channel. Ниже мы приведем подробную инструкцию для старта каналов.

Inactive - состояние канала, говорящее о том, что либо он никогда не был стартован, либо истекло время, указанное в атрибуте Disconnect Interval для канала отправителя. Для канала получателя это нормальное состояние, так как он переходит в состояние Running при инициации связи со стороны канала отправителя.




Начало  Назад  Вперед



Книжный магазин