Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Двухуровневая модель клиент-серверной структуры

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Двухуровневая модель клиент-серверной структуры

Архитектура клиент-сервер предусматривает разделение процессов хранения и обработки данных. Структурная схема двухуровневой модели архитектуры клиент-сервер представлена на рис. 1.

 

 

Рис.1. Структура двухуровневой архитектуры клиент-сервер

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

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

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

§ физическое хранение данных;

§ манипулирование данными (поиск, выборка, модификация и т.д.);

§ логическая и математическая обработка данных по запросу клиента.

Серверы баз данных могут обслуживать различные типы баз данных (централизованные и распределенные, одноуровневые и многоуровневые). В качестве сервера баз данных используются программные изделия Microsoft SQL Server, Oracle, Sybase и др.

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

Она также может производить дополнительную обработку данных. Программа - клиент посылает на сервер баз данных запрос на представление данных на определенном языке. Примером такого языка и соответственно типом базы данных является язык SQL (structured query language) - язык структурированных запросов для реляционной базы данных соответствующего типа.

В свою очередь, программа-клиент может представлять собой сложный инструментарий и базироваться не только на одной машине, но и на локальной вычислительной сети и на "настольной" CУБД.

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

· технология “тонкого” или “бедного” клиента;

· технология “толстого” или “богатого” клиента;

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

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

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

Достоинства

· толстый клиент обладает широким функционалом в отличие от тонкого.

· режим многопользовательской работы.

· предоставляет возможность работы даже при обрывах связи с сервером.

· имеет возможность подключения к банкам без использования сети интернет.

· высокое быстродействие.

Недостатки

· большой размер обрабатываемых данных.

· многое в работе клиента зависит от того, для какой платформы он разрабатывался.

· при работе с ним возникают проблемы с удаленным доступом к данным.

· довольно сложный процесс установки и настройки.

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

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

Наиболее простым примером двухуровневой клиент-серверной технологии является схема взаимосвязи между банкоматом (периферийной ПЭВМ банка) и центральной ЭВМ банка. Банкомат производит ввод данных со смарткарты и клавиатуры и после их проверки и обработки в машине банка осуществляет выдачу банкнот или чеков.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...