Вы находитесь на страницах старой версии сайта.
Переходите на новую версию Interface.Ru

СТАТЬЯ
25.11.02


Создание распределенных систем в Delphi и C++ Builder с помощью MIDAS

© Статья была опубликована на сайте "Компания CPS"

MIDAS (Multi-tier Distributed Appication Services) представляет собой набор сервисов, компонент и утилит, качественно упрощающих создание распределенных многозвенных систем клиент - сервер

Архитекура

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

Типичной структурой клиентского приложения в традиционной архитектуре клиент - сервер является "слоёный пирог", включающий следующие компоненты

Хотя две последние компоненты могут быть физически представлены как единый исполняемый файл, такой "пирог" обладает двумя несомненными недостатками, обычно выявляемыми уже на этапе эксплуатации информационных систем:

MIDAS решает эти проблемы за счет переноса бизнес - логики и механизмов доступа к данным с клиентских рабочих мест на выделенные сервера приложений.Это позволяет продлить жизнь устаревшего оборудования и добиться большей гибкости, лучшей производительности и управляемости прикладных систем.
MIDAS (Multi-tier Distributed Appication Services) представляет собой набор сервисов, компонент и утилит, качественно упрощающих создание распределенных многозвенных систем клиент - сервер. Среди них:

Интеграция с наиболее популярными средствами быстрой разработки приложений Borland Delphi и Borland C++Builder, в сочетании с поддержкой Java-клиентов, позволяют создавать действительно гибкие и управляемые системы.

Традиционная двухзвенная архитектура клиент-сервер

 

Трехзвенная архитектура на основе технологии MIDAS

Создание распределенных систем в Delphi и C++ Builder с помощью MIDAS

Как известно, в основе архитектуры доступа к данным в Delphi и C++Builder лежит понятие набора или множества данных - Data Set. При этом любой наследник (TTable, TQuery, TstoredProc) базового объекта TDataSet инкапсулирует поведение и свойства, присущие любому множеству данных - открытие и закрытие доступа, операции двунаправленной навигации, закладки, и т.п. Все визуальные компоненты для работы с базами данных (Data Controls) ссылаются через источник данных (TDataSource) на конкретную реализацию TDataSet.

За счет такой архитектуры разработчик может создавать собственные множества данных, которые будут получать информацию из удаленного хранилища данных с использованием технологий DCE/RPC, COM/DCOM или CORBA/IIOP.

Использование концепции модуля данных (Data Module) в Delphi и C++Builder позволяет разделить функциональную логику приложений и логику пользовательского интерфейса. Общая модель взаимодействия компонент, ориентированных на работу с базами данных (DataSet-DataSource-DataControls) позволяет единообразно разрабатывать как простейшие приложения для работы с базами данных, так и серверы приложений (middle tier application server) в многозвенной архитектуре клиент-сервер для систем масштаба предприятия. В последнем случае вместо обычных модулей данных разработчики используют удаленные модули (Remote DataModule). Палитры компонент Delphi 3 (начиная с версии 3.01) и C++Builder 3 включают специальные компоненты TMIDASConnection, TRemoteServer, TProvider, TClientDataSet.

Delphi и C++Builder предоставляют набор специализированных компонент TXxxConnection, обеспечивающих контекст соединения с серверами приложений: TSocketConnection, TDCOMConnection, TCORBAConnection и т.п.

Для облегчения "публикации" сервисов удалённых модулей данных, представляемых в виде связанных наборов данных, библиотека VCL включает в себя компоненты TProvider, TdataSetProvider и другие.

В архитектуре MIDAS функциональность множества данных в клиентских приложениях инкапсулируется в объекте TclientDataSet. Это позволяет сохранить логическую структуру клиентских приложений ("контрольный элемент" - "источник данных" - "набор данных") вне зависимости от количества звеньев разрабатываемой клиент-серверной системы

Взаимодействие между различными звеньями распределённой клиент- серверной системы может осуществляться с использованием различных объектных технологий и транспортных средств:

В случае использования Microsoft Transaction Server базовый механизм доступа к данным BDE (Borland Database Engine) естественно интегрируется с сервисами MTS с помощью встроенного BDE Resource Despenser, позволяющего использовать механизм пулинга соединений MTS.
При построении распределенных систем средства BDE, драйверы SQL Links и клиентская часть серверов баз данных (например, Oracle SQL*Net) целиком переносятся на сервер приложений. Вместо них на клиентские места устанавливается одна динамическая библиотека DBCLIENT.DLL размером менее 250 Kб. Таким образом, существенно упрощается эксплуатация, обновление и администрирование информационной системы.

MIDAS обладает гибкой схемой лицензирования, позволяющей предложить адекватное ценовое решение для малых, средних и крупных информационных систем. Легкость встраивания технологии MIDAS в приложения, разрабатываемые при помощи Delphi и C++Builder облегчает создание высококачественных тиражируемых программных продуктов.


Дополнительная информация

За дополнительной информацией обращайтесь в компанию Interface Ltd.

Обсудить на форуме Borland

Рекомендовать страницу

INTERFACE Ltd.
Телефон/Факс: +7 (495) 925-0049
Отправить E-Mail
http://www.interface.ru
Rambler's Top100
Ваши замечания и предложения отправляйте редактору
По техническим вопросам обращайтесь к вебмастеру
Дата публикации: 25.11.02