Архитектура клиент- сервер

Архитектура файл- сервер

Не имеет сетевого разделения компонентов диалога PS(средства представления) и PL(логика представления).

Использует ПК для функций отображения, что облегчает построение графического интерфейса.

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

Объектами разработки в файл-серверном приложении являются компоненты приложения, определяющие логику диалога (PL),а также логику обработки (BL) и управления данными (DL). Разработанное приложение реализуется либо в виде загрузочного модуля, либо в виде специального кода для интерпретацию

Недостаток: При большой интенсивности доступа к одним и тем же данным или при выполнении некоторых запросов, когда клиенту передаются большие объёмы информации, производительность ИС падает, время реакции – непредсказуемо.

Одним из традиционных средств, на основе которых создаются файл- серверные системы, являются локальные СУБД. Однако такие системы, как правило, не отвечают требованиям обеспечения целостности данных (в частности не поддерживают транзакции). Поэтому при их использовании задача обеспечения целостности данных возлагается на программы клиентов, что приводит к усложнению клиентских приложений.

Термин "сервер баз данных" обычно используют для обозначения всей СУБД, основанной на архитектуре "клиент-сервер", включая и серверную, и клиентскую части. Такие системы предназначены для хранения и обеспечения доступа к базам данных.

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

Обработка и хранение на сервере (СУБД работает на сервере), приложения на рабочих станциях.

Помимо хранения централизованной БД сервер БД должен обеспечивать выполнение основного объёма обработки данных

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

В основном используется 2-хуровневая модель.

Недостаток: сложные клиентские приложения, вызывающие большое взаимодействие с БД, могут сильно загрузить как клиента, так и сеть. Результаты запросов д. вернуться клиенту для обработки, т.к. там находится логика принятия решения. Это приводит к дополнительному усложнению администрирования приложений, разбросанных по различным клиентским узлам.

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

Хранимая процедура – процедура с операторами SQL для доступа к БД, вызываемая по имени с передачей требуемых параметров и выполняемая на сервере.

Хранимые процедуры улучшают целостность и безопасность приложений и БД (нет прямого доступа к данным), гарантируют актуальность коллективно используемых операций и вычислений.

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

Необходим компромисс: часть логики приложения размещают на сервере, часть – на стороне клиента. Такие системы наз. Системами с разделенной логикой

Основные функции СУБД