Занятие 8. Microsoft Transaction Server

(Продолжительность занятия 15 минут)

Microsoft Transaction Server (MTS) — приложение обработки транзакций для создания, развертывания и управления высокопроизводительными, масштабируемыми и устойчивыми серверными приложениями уровня предприятия для работы в интрасети и Интернете.

MTS можно использовать для построения масштабируемых серверных приложений из ActiveX-компонентов. Он позволяет сосредоточиться на решении проблем бизнеса, а не на разработке инфраструктуры приложений. Это занятие посвящено компонентам MTS, транзакциям и вызову компонентов MTS.

 


Изучив материал этого занятия, Вы сможете:

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

Программы на базе MTS строятся из наборов ActiveX-компонентов, реализующих бизнес-функции. Эти компоненты разрабатываются так же, как для одного пользователя. Благодаря их установке и выполнению в среде Transaction Server, серверное приложение автоматически масштабируется для поддержки множества параллельно обращающихся клиентов, обеспечивая высокую производительность и надежность.

Средства Transaction Server позволяют конструировать приложения, которые защитят Вас от сложностей разработки инфраструктуры, позволяя сосредоточиться на программировании конкретных функций и тем самым снижая стоимость и время разработки приложений для интрасети и Интернета.

Компоненты приложения

Компоненты приложения MTS моделируются на основе бизнес-правил. Они реализуются как внутрипроцессные СОМ-серверы (библиотеки динамической загрузки). Мы подробно обсудим СОМ в главе 5. Создают их с использованием Visual Basic, Visual C++, Visual J++ или любого другого ActiveX-совместимого средства разработки.

Компоненты, выполняющиеся в среде Transaction Server, используют модель транзакций, поэтому приложения можно программировать так, как будто они работают изолированно. Transaction Server берет на себя заботу о параллельном выполнении компонентов, распределении ресурсов между ними, защите, управлении контекстом и т. д. Система транзакций, работая согласованно с серверами баз данных и другими диспетчерами ресурсов, обеспечивает целостность, непротиворечивость, изолированность и завершенность транзакций.

Транзакции

Transaction Server упрощает задачу разработки компонентных приложений за счет модели транзакции. Она предохраняет приложения от проблем, связанных с одновременным обновлением данных или сбоями системы. Вот каковы свойства транзакции.

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

Компонент приложения можно объявить транзакционным, и в этом случае Transaction Server свяжет транзакции с объектами компонента. При выполнении методов такого объекта соответствующие сервисы менеджеров ресурсов реализуются как транзакции. В эту модель можно включить операции, выполняемые для других объектов Transaction Server, а действия нескольких объектов объединить в одну неделимую транзакцию.

Вызов компонентов MTS

Компоненты MTS и клиенты могут находится на разных компьютерах. Для вызова клиентом компонента MTS применяется специальная реализация СОМ — модель распределенного многокомпонентного объекта (Distributed СОМ, DCOM), HTTP или удаленная автоматизация (рис. 3.7). Для выполнения компонента на клиентском компьютере на нем необходимо установить MTS.

3-15.jpg

Рис. 3.7 Вызов компонента MTS

Вызов компонентов MTS средствами DCOM

DCOM — стандартный транспорт для вызова компонентов MTS. Чтобы разрешить DCOM-вызовы компонентов MTS, нужно настроить следующие параметры.

Если Вы планируете пользоваться MTS на клиентах под управлением Microsoft Windows 95, установите DCOM для Windows 95.

 


Примечание DCOM для Windows 95 (версия 1.1) можно загрузить с Web-узла Microsoft. Информацию о поддержке DCOM для Windows 95 Вы найдете на узле www.microsoft.com/oledev.

Вызов компонентов MTS средствами удаленной автоматизации

Удаленная автоматизация появилась в Visual Basic 4.0 еще до DCOM; она полезна для 16-разрядных клиентов, поскольку DCOM работает только с 32-разрядными клиентами. Для применения удаленной автоматизации на сервере, где установлены компоненты MTS, должен быть запущен диспетчер удаленной автоматизации (RACMAN). Подробности — в документации по Visual Basic.

Примечание При использовании удаленной автоматизацией средства защиты MTS недоступны, поскольку все вызовы осуществляются от имени RACMAN. Последний не выполняет персонификацию при вызове компонентов на сервере, и поэтому определить фактического клиента невозможно.

Резюме

Transaction Server можно использовать для построения масштабируемых серверных приложений из ActiveX-компонентов. Компоненты приложения MTS реализуются как внутрипроцессные СОМ-серверы (библиотеки динамической загрузки). Для их создания можно использовать Visual Basic, Visual C++, Visual J++ или любое другое ActiveX-совместимое средство разработки.

Transaction Server упрощает построение компонентных приложений посредством модели транзакций. Он предохраняет приложения от проблем, связанных с одновременным обновлением данных или сбоями системы.

Стандартным транспортом для вызова компонентов MTS является специальная реализация СОМ — DCOM. Чтобы разрешить DCOM-вызовы компонентов MTS, нужно настроить реестр клиента и параметры защиты DCOM.

 

Используются технологии uCoz