Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Технологии клиент-сервер.doc
Скачиваний:
6
Добавлен:
17.09.2019
Размер:
81.92 Кб
Скачать

5

Технологии «Файл-сервер». Технологии «Клиент-сервер

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

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

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

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

Файл-серверная модель организации и хранения информации была построена по двухуровневому принципу (клиент  файл-сервер). Данные хранятся на файл-сервере в определенном формате, задаваемом типом СУБД. В файл-серверной архитектуре используются, как правило, так называемые "настольные" СУБД (Clipper, FoxPro, Access, Paradox и др.). Управление обменом осуществляет сетевая операционная система (Novell Netvare, Windows NT).

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

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

"Технология" базы данных поддерживается на рабочих станциях. Программы приложений на рабочих станциях отвечают следующим задачам:

  • формирование пользовательского интерфейса к базе данных (к файл-серверу);

  • логическая обработка данных;

  • манипулирование данными.

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

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

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

Недостатки файл-серверной технологии:

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

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

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

  • низкая реакция системы на запросы пользователей.

Все эти недостатки были учтены при разработке клиент-серверной технологии. Различают три типа архитектуры клиент-серверной технологии, три модели: двухуровневая; трехуровневая; многоуровневая.