пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

Message-Oriented Middleware, преимущества и модель использования таких средств. Разработка клиентской и серверной частей (последовательность определения и использования объектов для организации взаимодействия, пример реализации клиента JMS).

Messaging System– это распределенная система, основанная на асинхронном обмене сообщениями(messages) между компонентами системы. В Messaging System приложения общаются не напрямую, а посредством MOM(промежуточного программного обеспечения). Если один компонент системы хочет послать сообщение другому компоненту, он посылает данное сообщение MOM, а уж MOM затем пересылает его адресату.

MOM реализует асинхронность обмена сообщениями, что позволяет избавиться от недостатков предыдущих систем, в частности синхронных. Перечислим указанные преимущества МОМ:

* Приложение, пославшее сообщение, не должно ждать ответа, и может продолжать свою текущую деятельность (только для асинхронного).

* Ни приложение, посылающее сообщение, ни адресат данного сообщения не обязаны быть активными в одно и то же время (только для асинхронного). Если адресат сообщения не активен, то MOM гарантирует, что сообщение будет доставлено, как только адресат станет активным (только для асинхронного).

* Компоненты системы не связаны напрямую друг с другом (decoupled), а потому возможно перенесение компонентов с одного хоста на другой в runtime без ущерба для работоспособности системы (только для асинхронного).

Существует две "основных" модели обмена сообщениями:

* point-to-point

* publish-subscribe (pub-sub)

Point-to-point модель применяется, когда одному или нескольким компонентам (так называемые senders) необходимо послать сообщение одному компоненту-адресату (receiver).

Publish-subscribe (Pub-sub) модель применима, когда одному или нескольким компонентам (publishers) необходимо послать сообщение одному или нескольким компонентам-адресатам (subscribers). Данная модель основана на понятии message topic.

Часто говорят, что в point-to-point модели есть один и только один receiver.

Однако, это не совсем верно. Может существовать несколько receivers, присоединенных к одной и той же queue (очереди). Но MOM доставит каждое сообщение только одному из них. Какому именно – зависит от реализации. Некоторые MOM доставляют сообщение первому зарегистрированному receiver

Cледует помнить, что многие pub-sub системы не гарантируют доставку сообщений в том порядке, в каком они были посланы (в отличие от point-to-point, где queue реализует принцип first-in/first-out).

Задача сохранения порядка следования сообщений не тривиальна даже в случае одного topic.

При необходимости сохранение порядка доставки сообщений в случае множественных topics –сложность возрастает экспоненциально. Поэтому в случае pub-sub модели следует по возможности избегать ситуаций, когда порядок следования сообщений важен (либо использовать заголовки и раздел свойств сообщений для синхронизации).

Java Message Service (JMS) – это Java API (то есть набор интерфейсов и классов) для работы с Message-Oriented Middleware (МОМ). Данный набор определен в пакете javax.jms в дереве пакетов J2EE.


28.05.2018; 16:54
хиты: 173
рейтинг:0
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь