Основные определения и концепции
Введем ряд базовых понятий, которые будут использоваться далее.
Сообщение в терминах WebSphere MQ - последовательность данных, значимых для приложений и/или пользователя. Сообщение MQ, как правило, состоит из двух частей - служебной и содержательной. В служебной части находится информация, которая представляет интерес в процессе пересылки - тип сообщения, путь его следования, время создания и пр. Служебная часть сообщения создается как приложениями, так и серверами, которые осуществляют его пересылку к месту назначения.
Содержательная часть сообщения представляет собой данные, которые посылают/принимают непосредственно приложения. Для обеспечения надежности в процессе передачи сообщения содержательная часть делится на сегменты, которые при необходимости могут передаваться как логически независимые единицы.
Хранение сообщений в процессе пересылки происходит в специальных очередях сообщений. Очередь сообщений представляет собой буфер, куда сообщения помещаются, либо извлекаются. Не останавливаясь детально на вопросах реализации очередей сообщений, скажем лишь, что сообщение может быть помечено как <устойчивое> - в этом случае оно сохраняется в очереди даже в ситуации непредвиденного отключения сервера, на котором физически реализована очередь. Безусловно, определение сообщения как устойчивого ведет к некоторому снижению производительности вследствие необходимости постоянного хранения актуальной копии сообщения на диске, но зато позволяет обеспечить гарантированность доставки информации в случае отключения серверов. Администратор задает тип сообщений по умолчанию (устойчивое/неустойчивое) для очереди, тем не менее, в очереди могут одновременно находиться сообщения обоих типов.
Управление очередями сообщений (создание, удаление, помещение/извлечение сообщений) осуществляется менеджерами очередей сообщений (иногда применяется название <сервер очередей сообщений>). Фактически менеджер очередей сообщений является системным программным средством, которое предоставляет пользовательским приложениям возможность осуществлять взаимодействие с очередями сообщений и непосредственно сообщениями. Вследствие этого, для обеспечения работоспособности системы на базе MQ, должен быть определен как минимум один менеджер очередей сообщений. При этом один менеджер очередей сообщений может управлять несколькими очередями. Схема, отображающая связь между сообщениями, очередями сообщений, менеджерами очередей и приложениями, показана на рис. 6.18. Менеджер очередей сообщений должен иметь уникальное имя для идентификации в процессе передачи сообщений.
Рис. 6.18. Приложения, очереди и сообщения