Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Клиент-серверная двухслойная архитектура
Под клиент-серверным приложением понимают ИС, основанную на использовании серверов БД. Ее архитектура при двухслойно реализации представлена на Рисунке 3. В этом случае: ¾ на стороне клиента выполняется часть приложения, в который обязательно входят компоненты, поддерживающие интерфейс с конечным пользователем, производящие отчеты и выполняющие другие специфичные для приложения функции. ¾ клиентская часть приложения взаимодействует с клиентской частью программного обеспечения управления БД, которая, фактически, является индивидуальным представителем СУБД для приложения. Ключевым отличием архитектуры клиент-сервер от архитектуры файл-сервер является абстрагирование от внутреннего представления данных (физической схемы данных). В результате клиентские программы манипулируют данными на уровне слоя бизнес-логики (см. Рисунок 3).
Рисунок 3. ИС в архитектуре " клиент-сервер", двухслойная архитектура Использование архитектуры клиент-сервер позволило создавать надежные (в смысле целостности данных) многопользовательские ИС с централизованной базой данных. Такие ИС независимы от аппаратной (а часто и программной) части сервера БД и поддерживают графический интерфейс пользователя на клиентских станциях, связанных локальной сетью. Причем издержки на разработку приложений в этом случае существенно сокращаются. Клиент становится «тоньше», но не намного, а сервер остается почти таким же «толстым». Основные особенности данной архитектуры: ¾ клиентская программа работает с данными через запросы к серверному ПО. ¾ базовые функции приложения разделены между клиентом и сервером. Достоинства: 1. Полная поддержка многопользовательской работы. 2. Гарантия целостности данных. Недостатки: 1. Бизнес логика приложений осталась в клиентском ПО. При любом изменении алгоритмов, надо обновлять пользовательское ПО на каждом клиенте. 2. Высокие требования к пропускной способности коммуникационных каналов с сервером, что препятствует использование клиентских станций иначе как в локальной сети. 3. Слабая защита данных от взлома, в особенности от недобросовестных пользователей системы. 4. Высокая сложность администрирования и настройки рабочих мест пользователей системы. 5. Необходимость использовать мощные ПК на клиентских местах. 6. Высокая сложность разработки системы из-за необходимости выполнять бизнес-логику и обеспечивать пользовательский интерфейс в одной программе. Нетрудно заметить, что большинство недостатков классической 2-х слойной архитектуры «клиент-сервер» проистекают от использования клиентской станции в качестве исполнителя бизнес логики ИС. Поэтому очевидным шагом дальнейшей эволюции архитектур ИС явилась идея " тонкого клиента", то есть разбиения алгоритмов обработки данных на части связанные с выполнением бизнес-функций и связанные с отображением информации в удобном для человека представлении. При этом на клиентской машине оставляют лишь вторую часть, связанную с первичной проверкой и отображением информации, перенося всю реальную функциональность системы на серверную часть.
|