ActiveX в Delphi


MTS-компоненты



MTS-компоненты обеспечивают следующие услуги низкого уровня:
- управление системными ресурсами, включая процессы, потоки и поддержку одновременного подключения к базе данных большого числа пользователей;
- автоматическое управление транзакциями;
- создание, выполнение и удаление компонентов сервера;
- обеспечение безопасности вашего приложения с помощью авторизации по ролям.
Delphi предоставляет возможность использовать в качестве клиентов MTS произвольные приложения или активные формы (ActiveForms).


MTS-компоненты - это СОМ-серверы внутри процесса, которые содержатся внутри библиотек DLL. Они отличаются от других СОМ-компонентов тем, что выполняются в специальной MTS-среде. MTS-компоненты реализованы в Delphi так же, как и остальные классы.
Обычно, MTS-серверы являются небольшими объектами и используются для различных бизнес-функций. Например, MTS-компоненты могут обеспечивать бизнес-правила приложения, а также различные виды и превращения состояний приложения. Рассмотрим, например, типичное приложение, которое может использоваться в медицинских учреждениях. Как известно, различные записи баз данных хранят сведения о пациентах, их истории болезней, группы крови и многое другое. MTS-компонент позволяет в реальном времени обновлять те изменения, которые произошли. Например, был добавлен новый пациент, введены результаты анализов и т. д.
Как показано на рис. 3.33, MTS-объект может рассматриваться как любой другой СОМ-объект. Но в дополнении к СОМ-интерфейсам MTS-объект поддерживает собственные MTS-интерфейсы.


Рис. 3.33. Простой MTS-объект
На рис. 3.33, кроме СОМ-интерфейсов, отдельно показан интерфейс IObjectControl. Для всех СОМ-объектов общим интерфейсом является IUnknown, а для всех MTS-объектов - интерфейс Iobjectcontrol. Данный интерфейс содержит методы для активации и завершения работы MTS-объектов, а также для управления ресурсами.
Клиент сервера, находящийся внутри MTS-среды, называется базовым клиентом. С точки зрения базового клиента, СОМ-объект внутри MTS-среды выглядит так же, как любой другой СОМ-объект. MTS-объекты размещаются в DLL, которые подключаются к исполняемому (ЕХЕ) файлу MTS.
По своей работе MTS-объекты очень похожи на обычные СОМ-объекты, которые мы рассматривали в предыдущих главах.



Содержание раздела