Н. 3. Елманова. C++Builder 3.0, архитектура "клиент/сервер" и Internet
щие удаленные модули данных будут равномерно распределены по всем имеющимся серверам приложений.
Если нет необходимости использовать Business ObjectBroker, то в каче-стве~значеИйяГсвойства" ComputerName компонента TMidasConnection следует установить имя компьютера, на котором функционирует сервер приложений, и значение свойства UseBroker при этом должно быть равным false.
8.10   Поставка "тонких" клиентов и серверов приложений
Как уже неоднократно отмечалось, поставка "тонких" клиентских приложений представляет собой намного более простой процесс, чем поставка "толстых" клиентов. Для функционирования такого клиента требуется помимо исполняемого файла наличие библиотеки dbclient.dll (ее можно найти в каталоге Windows\System на компьютере разработчика и скопировать либо в аналогичный каталог компьютера пользователя, либо в каталог, содержащий исполняемый файл клиентского приложения), а в случае "тонкого" клиента в виде ActiveX могут потребоваться в зависимости от опций проекта дополнительные пакеты компонентов и динамически загружаемые библиотеки, содержащиеся по умолчанию в списках Packages и Additional files диалоговой панели Web deployment options. Если речь идет о создании стандартного дистрибутива с помощью InstallShield Express или иного аналогичного средства, следует отказаться от включения BDE и SQL Links в его состав, а включить лишь файлы, необходимые для функционирования клиентского приложения, и библиотеку dbclient.dll. Нередко для поставки "тонких" клиентов используется также способ установки их с помощью Internet (или intranet) непосредственно с помощью запуска процедуры установки из Web-браузера.
Если клиентское приложение выполнено в виде исполняемого в браузере ActiveX, следует выбрать dbclient.dll в закладке Deploy Additional Files диалоговой панели Web Deployment Options. При распространении ActiveX через Internet рекомендуется выбрать также опцию "Use CAB file compression" для уменьшения времени передачи его по сети.
Если поставка "тонких" клиентов представляет собой максимальным образом упрощенную процедуру, то поставка серверов приложений и связанные с ней проблемы вызывают немало вопросов.
Нередко разработчики, создавшие сервер приложений и успешно протестировавшие его на компьютере, на котором производилась разработка, сталкиваются с трудностями при переносе этого сервера приложений на другой компьютер - он отказывается там выполняться либо работает некорректно. Причина такого поведения заключается в отсутствии на компьюте-
Создание многозвенных информационных систем с помощью C++Builder 3.0
ре, содержащем сервер приложений, ^обходимых библиотек, которые входят в состав MIDAS и должны находиться на сервере приложений. Это библиотеки IDPROV32.DLL (она должна быть в том же каталоге, в котором находится и BDE), DBCLIENT.DLL и STDVCL32.DLL (эти библиотеки должны быть в каталоге Windows\System и должны быть зарегистрированы в реестре).
~"     На компьютере, где выполняется сервер приложений, должен быть установлен MIDAS, в состав которого входит BDE, SQL Explorer (ConstraintBroker Manager), вышеупомянутые библиотеки, а также JpLEnterprise. В состав C++Builder 3 Client/Server Suite входит только MTDAS Development Kit, включающий лицензию разработчика и ограниченную версию MIDAS, позволяющую создавать серверы приложений, тестировать их, но не позволяющую заниматься их поставкой. Для поставки и промышленной эксплуатации серверов приложений, созданных с помощью C++Builder 3, требуется полная версия MIDAS, предоставляющая ее владельцу наряду с необходимыми библиотеками и утилитами право эксплуатации любого количества серверов приложений на том компьютере, где она установлена, и право многопользовательского доступа к BDE. Естественно, комплектов MIDAS нужно столько, сколько в сети имеется компьютеров с поддерживаемыми MIDAS серверами приложений. Эксплуатация серверов приложений без наличия полной версии MIDAS на компьютере, где они установлены, является нарушением лицензионного соглашения.
8.11   Различные архитектуры построения трехзвенных информационных систем
Многозвенные информационные системы можно построить разными способами, и выбор той или иной архитектуры существенно зависит от числа пользователей такой системы, степени территориальной разбросанности предприятия, потребности в централизованном хранении и обработке данных, частоты обновления версий используемых автоматизированных рабочих мест и структуры применяемой базы данных.
Первый часто встречающийся случай - крупное или среднее предприятие, расположенное компактно и имеющее общую локальную сеть. В этом случае нередко корпоративные данные хранятся в общей для всех серверной СУБД. Переход к трехзвенной архитектуре в этом случае производится главным образом с целью снижения издержек, связанных с конфигурацией рабочих станций (установка и настройка клиентской части" Серверной СУБД, настройка BDE, замена версий автоматизированных рабочих мест) и поддержкой их в рабочем состоянии, и во вторую очередь - с целью снижения сетевого трафика и повышения надежности эксплуатации системы
208
209