![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Модели клиент-сервер.
Клиент-сервер - это технология взаимодействия компьютеров в сети. Компьютер, управляющий каким либо ресурсом, принято называть сервером этого ресурса, а компьютер, пользующийся им, - клиентом. Каждый конкретный сервер определяется видом того ресурса, которым он владеет. Так файловый сервер, или файл- сервер, распоряжается файловой системой и т.д. Этот принцип распространяется и на взаимодействие программ. Если программа выполняет некоторые функции по предоставлению соответствующего набора услуг, то она рассматривается в качестве сервера. Программы пользующиеся этими услугами, принято называть клиентами. Следовательно, использование технологии клиент-сервер означает, что прикалдные программы, реализованные в ее рамках, имеют распределенный характер. Иными словами, одна часть функций прикладной программы реализуется в программе- клиенте, другая - в программе-сервере, причем для их взаимодействия реализуется некоторый протокол. Суть архитектуры “Клиент - сервер” заключается в том, что программа разбивается на две части: программу - клиент и программу - сервер соответственно. Сервер управляет ресурсами, а клиент формулирует запросы к серверу и получает от него результаты. Разумно хранить наборы данных там, где они постоянно используются. В то же время эти наборы могут представлять собой логически единую базу данных. Например, существует единая база данных предприятия, включающая базы данных каждого филиала, но физически данные для каждого филиала хранятся непосредственно в филиале. Такие базы данных называются распределенными. Однако возможность просто получать доступ к данным на локальном сервере, еще не есть признак распределенной базы данных. Надо в частности, еще уметь проводить межмашинные транзакции, иметь одновременный доступ и к данным на удаленном сервере. Как правило, для реализации архитектуры клиент - сервер разрабатываются три категории программных продуктов. Это серверы баз данных, обеспечивающие выполнение запросов к данным, продукты - клиенты, предназначенные для реализации интерфейса с пользователем, продукты связности, обеспечивающие взаимодействие между клиентами и серверами в сетевых средах(реализация протокола обмена). Продукты - клиенты предназначены для реализации их на основе рабочих мест пользователя. Выбор того или иного продукта определяется оборудованием рабочего места пользователя (алфавитно - цифровой терминал или графическая станция) и, естественно, теми задачами, которые будет решать пользователь. Разработка части " клиент" не должна зависеть от типа используемого сервера базы данных и его физического местоположения. Программе - клиенту неважно, находится ли сервер базы данных на той же самой машине или на другом компьютере в другом здании. Один из основных принципов технологии клиент-сервер заключается в разделении функций стандартного интерактивного приложения на четыре группы, имеющие различную природую. Первая группа - это функции ввода и отображения данных. Вторая группа обьединяет чисто прикладные функции, характерные для данной предметной области (например, для банковской системы- открытие счета, перевод денег с одного счета на другой и т.д.). Третья группа обьединяет функции доступа к данным.
Наконец, функции четвертой группы являются служебными, играющими роль связок между функциями первых трех групп.
В соответствии с этим в любом приложении выделяются следующие логические компоненты: · компонент представления (presentation), реализующий функции первой группы; · прикладной компонент (business application), поддерживающий функции второй группы; · компонент доступа к информационным ресурсам (resource access) или менеджер ресурсов (resource manager), поддерживающий функции третьей группы, а также вводятся и уточняются соглашения о способах их взаимодействия (протокол взаимодействия). Различия в реализации технологии клиент -сервер также определяются четырьмя факторами: видами программного обеспечения, в которыми интегрирован каждый из этих компонентов; механизмами программного обеспечения, используемыми для реализации функций всех трех групп; способом распределения логических компонентов между компьютерами в сети; наконец, механизмами, используемыми для связи ко мпонентов между собой. Выделяются четыре подхода, реализованные в следующих моделях: · модель файлового сервера(File Server - FS); · модель доступа к удаленным данным (Remote Data Access - RDA); · модель сервера баз данных (DataBase Server - DBS); · модель сервера приложений (Application Server - AS).
|