Н, 3. Елманова. C++Builder 3.0, архитектура "клиент/сервер" и Internet
Решение проблем: ИС с «тонким» клиентом
MidasConnection клиохт ТСРЯР,ОСОМ " "или OLEnterpriss
Borland Database Engine (BDE)				
				
	|   SQL Links   [jpr-		ODBC      [^	
Рс. 8.2.   "Тонкий"клиент и сервер приложений
Как может б:ыт> практически реализована данная технология? С одной стороны, с помоощо набора компонентов и классов C++Builder 3, обеспечивающих создани серверов приложений и клиентских частей, а с другой стороны, с помош1ю MIDAS, позволяющего осуществлять запуск удаленных серверов пр<Ш)жений, осуществлять межреестровый обмен сведениями об OLE-cepB»epix и оптимизировать нагрузку в случае использования нескольких серверов приложений. В данной главе будут рассмотрены простейшие практические примеры реализации подобной трехзвенной системы.
8.2     Чтотаое  MIDAS
MIDAS (Mullti-ier Distributed Application Services Suite) - новый продукт компании Inprisie Borland), предназначенный для эксплуатации серверов приложений, созздиных с помощью C++Builder 3 и Delphi 3. Этот продукт расширяет возысвдости, предоставляемые разработчикам технологией Microsoft DCOMI (listributed Component Object Model). Этот продукт позво-
Создание многозвенных информационных систем с помощью C++Builder 3.0
ляет обеспечить высокую производительность, надежность и защиту от сбоев при эксплуатации подобных систем.
Архитектура трехзвенной информационной системы, построенной с использованием MIDAS, представлена на рис. 8.3.
Middle Tier
Рис. 8.3. Архитектура трехзвенной информационной системы с использованием MIDAS
Рассмотрим, что представляют собой технологии, используемые в MIDAS.
Remote Data Broker позволяет создавать распределенные трехзвенные информационные системы, состоящие из серверной СУБД, среднего звена и "тонкого" клиента, при этом среднее звено может в общем случае состоять из нескольких серверов приложений и функционировать на нескольких компьютерах. Заметим, что "тонкий" клиент (пример создания которого был рассмотрен выше) представляет~собой приложение, не содержащее бизнес-правил, а лишь предоставляющее интерфейс пользователя.
Источником данных для "тонкого" клиента является сервер приложений, получающий от клиента запросы на выборку или изменение данных. При получении такого запроса сервер приложений обращается к серверу баз данных, клиентом которого он является, со своим собственным запросом. Получив от сервера результат выполнения собственного запроса, сервер приложений передает данные клиенту.
Компонент TClientDataSet предназначен для хранения данных, полученных от сервера приложений, в кэше клиента и, будучи потомком компонента TDataSet, обладает, подобно компонентам ТТаЫе и TQuery, как
164
165