Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Асинхронные компоненты (Queued Components)

В СОМ+ появилась новая возможность объявить некоторый интерфейс как асинхронный. Асинхронные интерфейсы и асинхронные компоненты (Queued Components) - это разные технологии. Использование асинхронного интерфейса позволяет клиенту сделать вызов некоторого метода асинхронного интерфейса сервера и сразу же заняться чем-нибудь еще (при использовании обычного синхронного интерфейса клиент блокируется до получения ответа от сервера). Но при этом и клиент и сервер должны функционировать одновременно. В случае вызова, направленного асинхронному компоненту, клиент также не блокируется, как и при вызове асинхронного интерфейса.

В случае вызова асинхронного компонента

- Клиент может не дожидаться ответа сервера и продолжать свою работу.

- Вызовы от клиента к серверу могут накапливаться на стороне клиента и
отправляться серверу все за один раз.

- Клиент может вызывать метод сервера даже в тот момент, когда сервер еще

не запущен.

Технология асинхронных компонент основана на технологии MSMQ (Microsoft Message Queuing).

Синхронная коммуникация удаленных клиента и сервера в СОМ+ основана на использовании протокола DCOM — объектно-ориентированной версии RPC. MSMQ предоставляет новую возможность — обмен сообщениями. Эта технология имеет следующие преимущества:

- Отправитель сообщения не блокируется в ожидании ответа от получателя.

- Отправитель и получатель могут работать в различные непересекающиеся

интервалы времени.

- Отправитель может направить сообщение сразу же целой группе получателей.

- Сообщение можно сохранить на диске и повторить его обработку при сбое.

Возможна пересылка сообщений по цепочке (аналог делегирования). Таким образом, MSMQ (вместе с другими подобными технологиями) представляет особую парадигму проектирования распределенных систем.

 

Основными элементами технологии MSMQ являются:

- API, используемый приложением для отправки и получения сообщений
Данный API имеется в двух видах: множество С функций и множество СОМ
объектов. MSMQ API обеспечивает: создание и уничтожение очереди
сообщений, открытие и закрытие существующей очереди сообщений,
получение сообщения из очереди.

- Сообщение - специальная структура, передаваемая как входной параметр в API функции. Ряд свойств, приписываемых сообщению, связан с аутентификацией и шифрованием сообщений. Технология асинхронных компонент требует использования новой системы аутентификации. Аутентификация позволяет получателю сообщения быть уверенным в том, что данное сообщение послано именно данным отправителем и в процессе передачи в сообщение не были внесены никакие искажения (целостность сообщения). Шифрование сообщения позволяет защитить передаваемую информацию от несанкционированного просмотра. По запросу отправителя выполняется шифрование тела сообщения. Информация об использованном алгоритме содержится в специальном свойстве сообщения. На стороне отправителя шифровку выполняет либо MSMQ. либо приложение-отправитель. На стороне получателя расшифровку выполняет менеджер очереди назначения, и в очередь сообщение включается уже в расшифрованном виде.

- Очередь. Сообщения посылаются и извлекаются из очередей, которые в свою очередь могут создаваться, открываться, закрываться, удаляться. Все очереди на одной машине управляются менеджером очереди. При создании новой очереди необходимо определить, будет ли создаваемая очередь публичной (public) или личной (private), и будет ли она транзакционной (transactional) или нетранзакционной (non-transactional).

 

Приложения MSMQ могут быть трех типов:

- MSMQ сервер. Поддерживаются и используются очереди, менеджер очередей, MSMQ API. маршрутизация сообщений между очередями. Хотя бы один такой сервер должен иметься в любом распределенном приложении, поддерживающем обмен сообщениями.

- Независимый клиент. Поддерживаются и используются очереди, менеджер очередей, MSMQ API. Благодаря наличию собственных очередей независимый клиент может отправлять сообщения даже будучи отключенным от сети. Отправляемые сообщения накапливаются в некоторой очереди и передаются в очередь назначения автоматически при подключении к сети.

- Зависимый клиент. Поддерживается и используется только MSMQ API. Такой клиент может работать только при подключении к сети.

<== предыдущая лекция | следующая лекция ==>
Вопросы безопасности | Модель событий
Поделиться с друзьями:


Дата добавления: 2014-01-05; Просмотров: 544; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.