Технология "клиент-сервер"

Автор работы: Пользователь скрыл имя, 10 Января 2013 в 20:34, реферат

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

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

Содержание работы

Введение 3
Глава 1. Основные понятия 3
1.1 Определение сервера и клиента 4
1.2 Роль сервера и клиента в архитектуре клиент-сервер 4
1.3 Понятие прикладных протоколов 5
1.4 Функции технологии клиент-сервер 6
Глава 2.Модели реализации 7
2.1 Модель файлового сервера 8
2.2 Модель удаленного доступа к данным 9
2.3 Модель сервера базы данных 12
2.4 Модель сервера приложений 13
3. Эволюция серверов баз данных 15
3.1 Централизованная архитектура и архитектура "один к одному" 15
3.2 Многопотоковая архитектура 16
3.3 Архитектура с виртуальным сервером 17
3.4 Многопотоковая мультисерверная архитектура 19
Заключение 20
Список литературы: 21

Файлы: 1 файл

Проф.комп.системы.doc

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


Оглавление

 

 

 

 

 

 

 

 

 

 

 

 

 

Введение

Как результат эволюции компьютерных технологий появились  компьютерные сети. Само появление  компьютерных сетей ознаменовало новый  этап в компьютерной технологии.

Самые первые компьютерные сети были довольно примитивными - скорость работы такой сети была очень маленькой по сравнению с современными сетевыми технологиями, но для того времени и это было достижение.

С совершенствованием аппаратной части сетей совершенствовалось и сетевое программное обеспечение. Со временем потребовалось совершенствование самих технологий, а не только развитие аппаратуры и программного обеспечения. Были разработаны современные сетевые технологии. Одной из таких технологий является технология «клиент-сервер», позволяющая пользователям сети получать быстрый доступ к ресурсам..

Глава 1. Основные понятия

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

-программа, установленная на компьютере пользователя, которая может осуществлять сетевой запрос с целью получения объекта, и предназначенная для его обработки (например, просмотра, изменения или печати документа);

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

-правила (протокол) взаимодействия  между этими программами. 

Технология взаимодействия, в которой одна программа запрашивает выполнение какой-либо совокупности действий ("запрашивает услугу"), а другая ее выполняет, называется технологией "клиент-сервер". Участники такого взаимодействия называются соответственно клиентом (client) и сервером (server). Достаточно часто клиентом (или сервером) называют компьютеры, на которых функционирует то или иное клиентское (или серверное) программное обеспечение.

Следует особо отметить, что набор действий, понимаемых как  запрашиваемая услуга, - это не обязательно чтение (получение) объекта. В том числе это может быть сохранение (запись), пересылка объекта и т.д.

1.1 Определение сервера и клиента

При большом числе  компьютеров (десятки, сотни и даже тысячи) предприятия чаще всего полагаются на сети модели «клиент-сервер». Упрощенно можно считать, что в такой сети отдельный компьютер подключается к одному или нескольким мощным компьютерам, которые называются серверами.

Сервер - это компьютер, или выполняющаяся на нём программа, которая предоставляет клиентам доступ к общим ресурсам и управляет этими ресурсами.

Клиент - пользователь (получатель) услуг и/или ресурсов, которые  предоставляет сервер.

В серверных сетях  серверы оснащены процессорами типа Intel Pentium 4 и сетевой операционной системой.

1.2 Роль сервера и клиента в архитектуре клиент-сервер

Роль серверов состоит  в обеспечение централизованной защиты и управлении трафиком, а  так же в предоставление клиентам ресурсов: информации, приложений и  доступа к устройствам совместного  пользования (например, к принтерам). В клиент - серверной среде в роли клиентов выступают настольные ПК (именно ПК, а не неинтеллектуальные терминалы!) под управлением операционной системы типа Windows 95 или Windows NT Workstation. Как правило, клиент использует собственные вычислительные мощности для обработки информации, полученной от сервера, но полагается на сервер в части предоставления необходимых данных и приложений. Такое распределение ролей в обработке информации носит название клиентской (front - end) и серверной (back - end) обработки.

Наряду с успешным функционированием  в собственной «родной» среде, сети модели клиент - сервер могут работать с микрокомпьютерами и мэйнфреймами. Именно эта гибкость в сочетании  достаточно низкой (по сравнению с  традиционными решениями) стоимостью и составляет привлекательность клиент - серверных сетей. Работая в такой среде на компьютере - клиенте, можно «вкушать плоды» трех разных методов обработки информации: автономной работы, взаимодействия с другими ПК сети и подключения к серверу или мэйнфрейму для доступа к хранящейся там информации.

1.3 Понятие прикладных протоколов

Необходимо различать  понятия сетевых приложений и  протоколов прикладного уровня. Протоколы  прикладного уровня являются частью (хотя и весьма большой) сетевых приложений. Рассмотрим два примера. Web является сетевым приложением, позволяющим пользователям получать web-документы по запросу и состоящим из множества компонентов, включая стандарт формата документов (HTML), браузеры (Netscape Navigator, Microsoft Internet Explorer и др.), web-серверы (например, Apache, Microsoft или Netscape), протоколы прикладного уровня. Протокол прикладного уровня для web носит название протокола передачи гипертекста (HyperText Transfer Protocol, HTTP) и описывает формат и порядок обмена сообщениями между клиентом и сервером (RFC 2646). Таким образом, HTTP является лишь частью web-приложения.

В качестве второго примера рассмотрим приложение электронной почты. Электронная  почта Интернета также состоит  из множества компонентов: почтовых серверов, содержащих почтовые ящики пользователей, программ для просмотра и создания электронных писем, стандартов, описывающих структуру электронных писем, протоколов прикладного уровня, регламентирующих порядок обмена сообщениями серверов между собой и с оконечными системами пользователей, а также интерпретацию полей, из которых состоят электронные письма. Основным протоколом прикладного уровня для электронной почты является протокол простой передачи сообщений (Simple Mail Transfer Protocol, SMTP). Как видно, SMTP (RFC 2821) -- лишь часть (хотя и достаточно большая) структуры приложений электронной почты.

Как сказано выше, протоколы прикладного  уровня определяют способ обмена сообщениями  между двумя процессами, выполняющимися на разных оконечных системах. Обычно протокол определяет следующие элементы:

- типы используемых сообщений, например запросы и ответы;

- синтаксис каждого из типов сообщений, описывающий поля сообщения и их разделители;

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

- правила, описывающие события, которые вызывают генерацию сообщений.

Некоторые из протоколов прикладного доступа (HTTP, SMTP и др.) являются официально документированными в RFC. Это означает, что если разработчик  нового браузера будет следовать  стандарту, то браузер сможет получать документы с любого web-сервера, построенного по этому же стандарту. Тем не менее существует множество протоколов прикладного уровня, которые не стандартизированы и при этом используются для поддержки коммерческих продуктов. В частности, это характерно для Интернет-телефонии.

1.4 Функции технологии клиент-сервер

Один из основных принципов  технологии клиент-сервер заключается  в разделении функций стандартного интерактивного приложения на четыре группы, имеющие различную природу.

Первая группа. Это  функции ввода и отображения  данных.

Вторая группа - объединяет чисто прикладные функции, характерные  для данной предметной области (для  банковской системы - открытие счета, перевод  денег с одного счета на другой и т.д.).

Третья группа - фундаментальные функции хранения и управления информационно-вычислительными ресурсами (базами данных, файловыми системами и т.д.).

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

В соответствии с этим в любом приложении выделяются следующие логические компоненты:

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

- прикладной компонент  (business application), поддерживающий функции  второй группы;

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

        Различия в реализации технологии  клиент-сервер определяются следующими  факторами:

- видами программного  обеспечения, в которые интегрирован  каждый из этих компонентов; 

- механизмами программного  обеспечения, используемыми для  реализации функций всех трех  групп; 

- способом распределения логических  компонентов между компьютерами  в сети;

- механизмами, используемыми для  связи компонентов между собой. 

Глава 2.Модели реализации

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

1. модель файлового сервера (File Server - FS);

2. модель удаленного доступа  к данным (Remote Data Access - RDA);

3. модель сервера баз данных (Data Base Server - DBS);

4. модель сервера приложений (Application Server - AS).

2.1 Модель файлового сервера

Модель файлового сервера  является наиболее простой и характеризует  собственно не столько способ образования фактографической информационной системы, сколько общий способ взаимодействия компьютеров в локальной сети. Один из компьютеров сети выделяется и определяется файловым сервером, т. е. общим хранилищем любых данных. Суть FS-модели иллюстрируется схемой, приведенной на рис. 1.

 

 

 Рис.1 Модель файлового сервера

 

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

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

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

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

2.2 Модель удаленного доступа к данным

Модель удаленного доступа к данным основана на учете специфики размещения и физического манипулирования данных во внешней памяти для реляционных СУБД. В RDA-модели компонент доступа к данным в СУБД полностью отделен от двух других компонентов (компонента представления и прикладного компонента) и размещается на сервере системы. Компонент доступа к данным реализуется в виде самостоятельной программной части СУБД, называемой SQL-сервером, и инсталлируется на вычислительной установке сервера системы. Функции SQL-сервера ограничиваются низкоуровневыми операциями по организации, размещению, хранению и манипулированию данными в дисковой памяти сервера. Иначе говоря, SQL-сервер играет роль машины данных. Схема RDA-модели приведена на рис.2.

 Рис.2. Модель удаленного доступа к данным (RDA -модель)

 

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

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

Таким образом, общение  клиента с сервером происходит через SQL-инструкции, а с сервера на клиентские установки передаются только результаты обработки, т. е. наборы данных, которые  могут быть существенно меньше по объему всей базы данных. В результате резко уменьшается загрузка сети, а сервер приобретает активную центральную функцию. Кроме того, ядро СУБД в виде SQL-сервера обеспечивает также традиционные и важные функции по обеспечению ограничений целостности и безопасности данных при совместной работе нескольких пользователей.

 Другим, может быть  неявным, достоинством RDA-модели  является унификация интерфейса  взаимодействия прикладных компонентов  информационных систем с общими  данными. Такое взаимодействие стандартизовано в рамках языка SQL уже упоминавшимся специальным протоколом ODBC (Open Database Connectivity --  стандартный протокол доступа к данным на серверах баз данных SQL.), играющим важную роль в обеспечении интероперабельности, т. е. независимости от типа СУБД на клиентских установках в распределенных системах. Иначе говоря, специальный компонент ядра СУБД на сервере (так называемый драйвер ODBC) способен воспринимать, обрабатывать запросы и направлять результаты их обработки на клиентские установки, функционирующие под управлением реляционных СУБД других, не «родных» типов. Такая возможность существенно повышает гибкость в создании распределенных информационных систем на базе интеграции уже существующих в какой-либо организации локальных баз данных под управлением настольных или другого типа реляционных СУБД. Специальные драйверы ODBC могут обеспечить возможность использования настольной СУБД в качестве клиента SQL-сервера «тяжелой» многопользовательской клиент-серверной СУБД.

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