Трехуровневая архитектура «клиент-сервер» представлена на рис. 1.10.
|
|
|
Компонент представления Прикладной компонент |
|
Компонент доступа к ресурсам |
|
База данных |
Первый уровень
Клиент
Второй уровень
|
Третий уровень Сервер базы данных |
Сервер приложения
Рис. 1.10. Трехуровневая архитектура «клиент-сервер»
В AS-модели процесс, выполняющийся на компьютере-клиенте, отвечает, как обычно, за интерфейс с пользователем (то есть осуществляет функции первой группы). Обращаясь за выполнением услуг к прикладному компоненту, этот процесс играет роль клиента приложения (Application Client - AC). Прикладной компонент реализован как группа процессов, выполняющих прикладные функции, и называется сервером приложения (Application Server -AS). Все операции над информационными ресурсами выполняются соответствующим компонентом, по отношению к которому AS играет роль клиента. Из прикладных компонентов доступны ресурсы различных типов -базы данных, очереди, почтовые службы и др.
Трехуровневая архитектура довольно естественно отображается на среду Web, где Web-браузер исполняет роль «тонкого» клиента, а Web-сервер – сервера приложений.
Таким образом, можно подвести некоторые итоги по рассмотренным моделям архитектуры «клиент-сервер». RDA- и DBS-модели опираются на двухзвенную схему разделения функций. В RDA-модели прикладные функции приданы программе-клиенту. В DBS-модели ответственность за их выполнение берет на себя ядро СУБД. В первом случае прикладной компонент сливается с компонентом представления, во втором - интегрируется в компонент доступа к информационным ресурсам. В AS-модели реализована трехзвенная схема разделения функций. Здесь прикладной компонент выделен как важнейший изолированный элемент приложения. Для его определения используются универсальные механизмы многозадачной операционной системы и стандартизованы интерфейсы с двумя другими компонентами. AS-модель является фундаментом для мониторов обработки транзакций (Transaction Processing Monitors - TPM), или, проще, мониторов транзакций, которые выделяются как особый вид программного обеспечения.
предыдущаяследующая