Конвейеры Форда сделали в свое время прорыв в автомобильной промышленности, показав наивысшую производительность труда из-за того, что весь процесс сборки был разбит на мелкие и максимально простые операции, и каждый рабочий специализировался на выполнении только одной операции, но эту операцию он выполнял максимально быстро и качественно. В случае клиент серверных технологий клиентское приложение выполняет операции обработки- данных, а сервер хранения, поставки, и модификации данных.
Преимуществом архитектуры «клиент-сервер» является возможность хранения на сервере бизнес-правил (например, правил ссылочной целостности или ограничений на значения данных), что позволяет избежать дублирования кода в различных клиентских приложениях, использующих общую базу данных. Программный код, реализующий указанные бизнес- правила, представляется в виде триггеров и хранимых процедур.
Триггером называется именованный набор команд SQL, хранящийся на сервере, который автоматически выполняется, когда происходит некоторое заданное событие. Например, триггер может выполняться при вставке, изменении или удалении строки в существующей таблице, при наступлении определенного момента времени и т.д.
Хранимой процедурой называется именованный набор команд SQL, который работает точно так же, как и триггер, с той разницей, что он обычно вызывается из программы клиента, а не выполняется автоматически, как реакция на заданное событие.
В настоящее время архитектура клиент/ сервер реализуется в виде либо двухзвенной, либо трехзвенной модели. В зависимости от используемой модели происходит разделение функций обработки данных между сервером и клиентом.
Двухзвенная модель представляет собой вышеописанную классическую структуру, состоящую из компьютера -сервера и компьютера клиента. Двухзвенная модель может быть реализована:
· модель удаленного доступа к данным
· модель сервера базы данных
· модель распределенной функции
В модели удаленного доступа к данным (Remote Data Access -RDA) программы, реализующие функции обработки информации и представления информации совмещены и выполняются на компьютере- клиенте («толстый клиент»). Основное достоинство RDA- модели состоит в большом количестве готовых СУБД (наиболее старая модель) и инструментальных средств, обеспечивающих быстрое создание программ клиентской части.
Недостатками RDA – модели являются, во-первых, довольно высокая загрузка трафика сети, поскольку все данные для обработки направляются на удаленный клиент, во- вторых, модель неудобна для модификации и сопровождения, поскольку все функции обработки и представления тесно взаимосвязаны. При незначительном изменении какой-нибудь функции требуется переделка клиентской части.
Модель сервера базы данных (DataBase Server- DBS) отличается от предыдущей модели тем, что функции компьютера- клиента ограничены функциями представления информации, в то время как функции обработки информации выполняются программами, находящимися на компьютере – сервере «тонкий клиент». Достоинствами модели DBS являются возможность хорошего централизованного администрирования, а также уменьшением трафика сети за счет того, что выполнение программ на компьютере -сервер требует значительно меньших затрат на пересылку данных по сети. К недостаткам модели DBS следует отнести сложность разработки хранимых процедур, так как хранимая процедура сильно зависит от конкретной СУБД, и плохо перемещаются на другие компьютеры- серверы.
В модели распределенной функции обработка данных разделена между компьютером – сервером и компьютером – клиентом. При этом общие функции обработки размещаются на сервере, а специфические функции обработки – на клиенте. Достоинством модели является то, что СУБД с распределенными функциями может использовать информацию с разнородных баз данных. К недостаткам можно отнести повышенную сложность разработки программных средств, учитывающих особенности сервера и клиента.
Модель распределенной базы данных использует мощный компьютер – клиента, при этом данные хранятся как на компьютере- сервере, так и на компьютере- клиенте. Достоинством данной модели является гибкость создаваемой на ее основе информационной системы, позволяющей клиенту обрабатывать локальные и удаленные базы данных. Такая система обладает повышенной живучестью, так как разрыв соединения клиента и сервера не приводит к остановке системы в целом. К недостаткам модели можно отнести большие высокую стоимость как компьютера – клиента, так и компьютера- сервера.
Распределение функций в вышеописанных моделях приведены в Таблице 11.2.
Таблица 11.2
Модель |
Данные |
Обработка |
Представление |
Удаленный доступ к данным |
Сервер |
Клиент |
Клиент |
Сервер баз данных |
Сервер |
Сервер |
Клиент |
Распределенная функция |
Сервер |
Клиент/ Сервер |
Клиент |
Распределенная база данных |
Сервер/ Клиент |
Клиент |
Клиент |
Трехзвенная модель подразумевает наличие помимо сервера баз данных выделенного сервера приложений (AS-ApplicationServer), содержащего основную часть программ обработки информации. При этом компьютер – клиент осуществляет выборку данных не непосредственно с компьютера- сервера, а через сервер приложений (Рис 11.3).
Необходимость создания трехзвенной модели была вызвана попыткой разработчиков, оставаясь в рамках двухзвенной модели, наращивать возможности хранимых процедур в модели «сервер баз данных». Следствием этого стала утеря совместимости между серверами баз данных различных производителей.
|
На сервере приложений реализуется несколько функций обработки
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.