Технология модели «клиент-сервер»

Автор работы: Пользователь скрыл имя, 23 Ноября 2013 в 12:56, творческая работа

Описание работы

Компьютер, управляющий тем или иным ресурсом, принято называть сервером этого ресурса
Компьютер, желающий воспользоваться ресурсов – клиентом.
Программы – аналогично
Можно для одного ресурса выполнять роль клиента, для другого - сервера

Файлы: 1 файл

8. Клиент-сервер.ppt

— 418.00 Кб (Скачать файл)

Технология модели  
«клиент-сервер»

Роли

 

  • Компьютер, управляющий тем или иным ресурсом, принято называть сервером этого ресурса
  • Компьютер, желающий воспользоваться ресурсов – клиентом.
  • Программы – аналогично
  • Можно для одного ресурса выполнять роль клиента, для другого - сервера

4 группы функций приложения:

 

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

 

Логические компоненты приложения:

 

  • компонент представления, реализующий функции первой группы;
  • прикладной компонент, поддерживающий функции второй группы;
  • компонент доступа к информационным ресурсам,

Различия в реализациях технологии  «клиент-сервер» 

 

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

 

Выделяются четыре подхода, реализованные  в моделях:

 

  • модель файлового сервера  
    (File Server – FS);
  • модель доступа к удаленным данным (Remote Access Data – RDA);
  • модель сервера базы данных  
    (DataBase Server – DBS);
  • модель сервера приложений  
    (Application Server – AS).

 

Файловый сервер (FS)

 

Компонент представления

 

Прикладной компонент

 

 
файлы 


 

Компонент  
доступа  
к ресурсам

 

Клиент

 

Сервер

Файловый сервер (FS)

 

  • Высокий трафик (передача множества файлов, необходимых приложению)
  • Узкий спектр операций манипуляции с данными («данные – это файлы»)
  • Отсутствие адекватных средств безопасности доступа к данным (защита только на уровне файловой системы) и т.д.

Модель доступа к удаленным  ресурсам (RDA)

 

SQL

 

Компонент представления

 

Прикладной компонент

 

 
данные 


 

Компонент доступа  
к ресурсам

 

Клиент

 

Сервер

Модель доступа к удаленным  ресурсам (RDA)

 

  • унификация интерфейса «клиент-сервер» в виде языка SQL
  • перенос компонента представления и прикладного компонента на компьютеры-клиенты существенно разгружает сервер БД
  • администрирование приложений практически невозможно из-за совмещения в одной программе различных по своей природе функций (функции представления и прикладные).

Модель сервера базы данных (DBS)

 

Вызов

 

Компонент представления

 

 
данные 


 

Прикладной компонент

 

Компонент доступа к ресурсам

 

Клиент

 

Сервер

Модель сервера базы данных (DBS)- особенности

 

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

 

Модель сервера базы данных (DBS)- достоинства

 

  • Возможность централизованного администрирования прикладных функций
  • Снижение трафика (вместо SQL–запросов по сети направляются вызовы хранимых процедур)
  • Возможность разделения процедуры между несколькими приложениями, и экономия ресурсов компьютера за счет использования единожды созданного плана выполнения процедуры.

 

Модель сервера базы данных (DBS) - недостатки

 

  • Ограниченность средств, используемых для написания хранимых процедур, которые представляют собой разнообразные процедурные расширения SQL, не выдерживающие сравнения по изобразительным средствам и функциональными возможностями с языками третьего поколения, такими как C++ или Pascal.
  • Сфера их использования ограничена конкретной СУБД, в большинстве СУБД отсутствует возможность отладки и тестирования хранимых процедур.

 

Наилучший результат – RDA + DBS

 

  • Поддержка целостности базы данных и некоторые простейшие прикладные функции поддерживаются хранимыми процедурами (DBS-модель),
  • Более сложные функции реализуются непосредственно в прикладной программе, которая выполняется на компьютере-клиенте

Модель сервера приложений

 

Компонент представления

 

 
API 


 

Прикладной  
компонент

 

 
 


 

Компонент доступа к ресурсам

 

Клиент

 

Сервер

 

Сервер

Модель сервера приложений

 

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

 

АКТИВНЫЙ СЕРВЕР

 

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

 

Активный сервер включает в  себя:

 

  • процедуры базы данных;
  • правила (триггеры);
  • события в базе данных;
  • типы данных, определяемые пользователем.

 

Процедуры базы данных

 

  • Общие части (часто используемые) прикладных программ оформляются в отдельные процедуры, которые хранятся непосредственно в базе данных.
  • Одна процедура может использоваться несколькими прикладными программами.
  • Сокращаются затраты на написание прикладных программ – они составляются из готовых процедур.
  • Прикладная программа, вызывающая процедуру, передает серверу лишь ее имя и параметры.

 

Правила (триггеры)

 

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

 

События в базе данных

 

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

 

События в базе данных

 

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

 

Типы данных, определяемые пользователями

 

  • Описание нового типа данных хранится в базе данных и его обработка происходит так же, как и обработка стандартных типов данных.

 


Информация о работе Технология модели «клиент-сервер»