ISSN 0236-235X (P)
ISSN 2311-2735 (E)

Journal influence

Higher Attestation Commission (VAK) - К1 quartile
Russian Science Citation Index (RSCI)

Bookmark

Next issue

4
Publication date:
09 December 2024

The article was published in issue no. № 2, 2003
Abstract:
Аннотация:
Author: () -
Ключевое слово:
Page views: 15678
Print version
Full issue in PDF (1.36Mb)

Font size:       Font:

MIDAS (Multi-tier application server suite) представляет собой технологию создания распределенных систем, состоящих из сервера баз данных, сервера доступа к данным (который, в свою очередь, является клиентом сервера баз данных) и так называемого тонкого клиентского приложения, являющегося, соответственно, клиентом сервера доступа к данным (рис. 1).

Фактически два последних звена делят между собой функциональность, характерную для клиентского приложения, используемого в «классических» двухзвенных клиент-серверных системах. «Тонкий» клиент обычно является приложением, с которым работает конечный пользователь, и поэтому предназначен главным образом для предоставления пользовательского интерфейса. Естественно, подобное приложение должно «знать», на каком компьютере локальной или глобальной сети находится сервер доступа к данным, каково имя (или иной идентификатор) предоставляемого им сервиса и с помощью каких средств (имеются в виду сервисы операционной системы, сетевые протоколы и т.д.) с ним можно этими данными обмениваться.

Что касается сервера доступа к данным, то обычно он недоступен конечным пользователям. Иными словами, сервер доступа к данным может представлять собой как обычное Windows-приложение с формами, так и приложение без форм, а также консольное приложение либо сервис операционной системы, пишущий сообщения для администратора системы в log-файл. Его задача – обмениваться данными с «тонким» клиентом и обращаться к серверу баз данных с собственными запросами (обычно инициированными этим обменом). Поэтому сервер доступа к данным должен, с одной стороны, предоставлять клиентам интерфейсы, позволяющие получать от него данные, а с другой – быть полноценным клиентом сервера баз данных, то есть содержащий его компьютер должен иметь как минимум установленную клиентскую часть серверной СУБД.

MIDAS и Интернет

При организации доступа клиентов к базам данных через каналы Интернет возникает необходимость разработки MIDAS-клиентов в виде web-приложений. Конечное пользовательское приложение в этом случае представляет собой web-браузер, в результате информационная система по существу становится четырехзвенной (рис. 2).

Подпись: Рис. 2. Четырехзвенная информационная система с MIDAS-клиентом, представляющим собой web-приложениеПодпись: Рис. 1. Распределенная информационная система с сервером доступа к даннымПо сравнению с традиционными web-приложениями для работы с данными, представляющими собой полноценное клиентское приложение для работы с сервером баз данных, использование «тонких» MIDAS-клиентов имеет существенное преимущество. Дело в том, что web-приложения нередко обслуживают непредсказуемое число клиентов одновременно, поэтому вопрос уменьшения количества потребляемых ресурсов (а их расходуют и клиентские библиотеки, и BDE, и ADO, и иные средства доступа к данным) в этом случае стоит более остро, чем при использовании обычных Windows-клиентов в локальной сети. Важнейшей задачей разработки web-приложений является осуществление быстрого, гибкого и динамического взаимодействия клиента с сервером. Для решения этой задачи хорошо подходит механизм динамического формирования страниц ASP (Active Server Pages) и web-сервер компании Microsoft – Internet Information Server (далее IIS) 5.0. Рассмотрим пример реализации такого web-приложения.

Разработка web-приложения

В основе реализации лежит принцип разделения на серверную и клиентскую части программного обеспечения (рис. 3).

Подпись: Рис. 3. Взаимодействие клиента с северомНа серверной части размещаются ASP сценарии и файлы динамических библиотек, при помощи которых динамически формируются HTML страницы, отправляемые клиентам. На клиентской части – web-браузер, при помощи которого осуществляется навигация по страницам. При формировании интерфейса клиентской части и обработке форм запросов в web-браузере используются подгружаемые с сервера JavaScript сценарии.

Подпись: Рис. 4. Интерфейс клиентаОбмен данными web-приложения с web-браузерами клиентов и с сервером доступа к данным осуществляется при помощи созданного на сервере экземпляра COM (Component Object Model) объекта. Его реализация может быть двух типов и зависит от программного обеспечения web-сервера:

1)       наследование от TASPObject – при использовании ISS 4.0;

2)       наследование от TMTSASPObject – при использовании Microsoft Transaction Server и IIS 5.0.

Взаимодействие с сервером доступа к данным осуществляется через специализированный интерфейс (для этого примера – IKernel), в котором реализованы необходимые методы, функции и свойства: соединение с сервером; запрос и получение объектов из базы данных; формирование полученного набора данных и т.д. Реализация этого интерфейса может варьироваться в зависимости от программы-сервера, с которым предполагается осуществлять взаимодействие. Работа может вестись в двух режимах:

·         в on-line режиме web-приложение формирует по запросу клиента необходимый набор данных, который сразу отправляется клиенту в обновленной HTML странице;

·         в near-line режиме web-приложение формирует по заявке клиента электронное письмо с запрошенными данными и отправляет его при помощи почтовой службы на электронный адрес клиента.

Доступ к данным для формирования запроса или заявки на получение информации реализуется при помощи сценариев, представляющих собой описание состава данных в терминах классов модели данных, которые должны быть переданы клиенту. Сценарий объединяет в себе элементы дерева навигации, фильтры (условия выборки), списки ограничений на объекты разных классов. Выполнение сценария определяется путем навигации в дереве сценария и обработкой условий последующей выборки по результатам анализа предыдущих данных, прочитанных в заданных узлах сценария. Все узлы сценария при его создании получают уникальные (в пределах сценария) идентификаторы – для контекстного управления навигацией и для привязки данных. В качестве формата хранения сценариев выбран XML (Extensible Markup Language) формат как наиболее подходящий для описания и хранения иерархических структур вне баз данных. Сценарии описывают классы объектов и связи между ними, на основе которых строится дерево навигации.

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

Интерфейс клиента реализован с использованием фреймовой структуры страницы. Схематически он может выглядеть как на рисунке 4.

Удобство заключается в том, что панель кнопок отделена от дерева навигации по классам объектов и от данных. Такой подход позволяет отправлять клиенту только фрагмент с обновленным набором данных, а не всю страницу целиком; это позволяет снизить загруженность каналов связи.

Страницы формируются на сервере динамическим способом и не содержат в себе специфических элементов управления ActiveX. Это делает возможным реализацию клиентского интерфейса для отображения в web-браузерах разных производителей: MS Internet Explorer, Netscape Navigator, Opera Browser и т.д.

В заключение отметим, что в статье рассмотрены вопросы создания Web-приложений в MIDAS-технологии. Описаны основные задачи, которые решаются при помощи таких систем. Показаны варианты построения и реализации on-line, near-line режимов работы данных систем, также описаны возможности наложения условий на ограничение видимости объектов. Показаны преимущества использования сценариев доступа к данным и механизмы динамического формирования страниц, преимущества варианта обмена данными при помощи динамических страниц перед ActiveX объектами, внедренными в страницы.

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


Permanent link:
http://swsys.ru/index.php?page=article&id=634&lang=en
Print version
Full issue in PDF (1.36Mb)
The article was published in issue no. № 2, 2003

Perhaps, you might be interested in the following articles of similar topics: