Двухуровневая модель клиент-серверной структуры
Технологии «Файл-сервер». Технологии «Клиент-сервер Технология клиент-сервер представляет собой разновидность сетевой технологии. Она отображает модель взаимодействия между вычислительными машинами и информационно-вычислительными ресурсами. Вычислительная машина, управляющая определенным ресурсом, называется сервером данного ресурса. Так, например, сервер базы данных управляет информационным ресурсом - файлами базы данных, поэтому его называют файл-сервером. Вычислительные машины, которые через средства связи пользуются ресурсами серверов, называются клиентами. Аналогичный принцип распространяется и на взаимодействие программ. Программа, которая выполняет заданный набор функций и предоставляет другим программам определенный набор услуг, рассматривается как сервер, а программа, которая пользуется этими услугами, называется клиентом. Технология клиент-сервер имеет различные варианты реализации и дает представление о том, как может быть организована современная распределенная информационная система. Разработка клиент-серверной архитектуры вызвана неспособностью файл серверных моделей, которые функционировали на первом этапе использования сетевых приложений в экономике, решать задачи в централизованных базах данных со множеством клиентов. Файл-серверная модель организации и хранения информации была построена по двухуровневому принципу (клиент ® файл-сервер). Данные хранятся на файл-сервере в определенном формате, задаваемом типом СУБД. В файл-серверной архитектуре используются, как правило, так называемые "настольные" СУБД (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 Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|