Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Все лекции по системам реального времени.pdf
Скачиваний:
252
Добавлен:
02.05.2014
Размер:
8.11 Mб
Скачать

СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ

142

гии входят также протоколы для обнаружения, присоединения и по- иска ресурсов. Сервис-провайдер, например цифровой видеомагни- тофон, регистрируется в службе имен Jini. Поэтому новый провайдер должен сначала динамически найти службу поиска (эта процедура называется обнаружением), а затем зарегистрироваться в ней (проце- дура присоединения). Для каждого сервиса, который собирается пре- доставлять провайдер, он должен загрузить Java-объект, обеспечи- вающий интерфейс к данному сервису.

Клиент Jini, скажем цифровая видеокамера, отыскивает службу имен, пользуясь протоколом обнаружения. Затем с помощью этой службы клиент находит нужный сервис допустим, сервис записи, предоставляемый видеомагнитофоном, – после чего загружает из службы поиска Java-объект, который позволит ему напрямую взаи- модействовать с устройством. Таким образом, видеокамера пользу- ется службой имен для поиска сервиса видеомагнитофона, загружает объект записи на магнитофон, а затем работает уже непосредственно с магнитофоном.

7.11. Системы обработки транзакций

Приложения для обработки транзакций (или просто транзакци- онные приложения) относятся к классу критических для бизнеса или иной деятельности [14]. Сюда входят системы ввода заказов, резер- вирования авиабилетов и кассовые терминалы. Транзакционное при- ложение занимается обновлением информации в базе данных. На- грузка на такое приложение обычно предсказуема, значительную до- лю в ней занимают запросы на обновление. Известны также требова- ния в периоды пиковой нагрузки, поэтому можно оценить структуру множества запросов к базе. Некоторые транзакционные приложения должны работать постоянно, в других допустимы короткие пе- рерывы.

7.11.1. Характеристики транзакций. Транзакция это запрос клиента к серверу, состоящий из двух или более операций, которые образуют единую логическую функцию, причем она должна быть ли- бо выполнена полностью, либо не выполнена вовсе. Транзакции по- рождаются клиентом и посылаются серверу для обработки. В класси- ческой конфигурации клиента и сервера обработка целиком возлага- ется на сервер. В распределенных приложениях сервер может делеги- ровать одну или несколько операций другим серверам.

www.pdffactory.com

СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ

143

Рассмотрим, к примеру, электронный перевод денежных средств. Чтобы транзакция считалась завершенной, требуется успеш- но провести все операции. Если какую-то операцию осуществить не удается, транзакцию следует отменить. Это означает, что результаты выполнения отдельных составляющих операций необходимо аннули- ровать, чтобы система пришла в такое состояние, как будто данная транзакция и не начиналась.

У транзакций выделяются следующие свойства:

§атомарность. Транзакция это неделимая единица работы. Она либо выполняется полностью (фиксируется), либо не вы- полняется вовсе (откатывается);

§непротиворечивость. После завершения транзакции система должна оказаться в непротиворечивом состоянии;

§изолированность. На поведение транзакции не должны ока- зывать влияния другие транзакции;

§долговечность, или устойчивость. Изменения сохраняются после завершения транзакции, даже если за ним последует сбой системы.

7.11.2. Мониторы обработки транзакций. Монитор обработки транзакций (ТР-монитор) координирует поток информации между различными клиентами, инициирующими запросы, и приложением обработки транзакций, которое отвечает на эти запросы. ТР- мониторы уже много лет существуют на больших ЭВМ. Наиболее широко известна программа CICS компании IBM, функционирующая

соперационными системами и СУБД, которые поставляет IBM.

Вгетерогенной клиент-серверной среде ТР-мониторы выполня- ют следующие действия:

§посылают и принимают сообщения от клиентов и серверов;

§управляют потоком транзакций и распределяют нагрузку ме- жду серверами;

§поддерживают глобальные транзакции, которые относятся к нескольким распределенным базам данных, в частности га- рантируют резервное копирование и восстановление глобаль- ных транзакций;

www.pdffactory.com

СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ

144

§реализуют интерфейс с менеджерами ресурсов, например с ОС и СУБД;

§редоставляют средства для администрирования системы.

§Современные ТР-мониторы, такие как Tuxedo или Enema, поддерживают трехуровневую архитектуру клиент-сервер:

§функциональность клиента. Представление информации и взаимодействие с пользователем. Например, клиент может находиться на персональном компьютере;

§функциональность сервера приложений, поддерживающего бизнес-логику. Клиент общается с сервером приложений по- средством сообщений;

§управление данными. В частности, реляционная база данных под управлением СУБД Oracle может быть распределена ме- жду несколькими узлами.

Изоляция клиента от сервера приложений позволяет раздельно проектировать и разрабатывать пользовательский интерфейс и биз- нес-логику.

www.pdffactory.com