Файл: Технология «Клиент - Сервер».pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 25.06.2023

Просмотров: 141

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

В том случае, если данным необходимо быть понимаемым в более чем одной системе управления данными, то необходима стандартная форма представления данных для их передачи. Необходимо также внедрить стандартную форму представления архивных БД.

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

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

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

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

Управление данными может быть облегчено через стандартизацию средства моделирования данных при его использовании для обмена между различными средами управления данными.

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

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

1.3. Основные преимущества архитектуры «Клиент-Сервер».

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


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

Быстродействие – является основным фактором целесообразности разработки систем используется для функционирования архитектуры клиент-сервер. Технологи серверов баз данных становятся проще в использовании и хорошо сочетаются в одних системах со принципом «Rapid Application Development». Соответственно, ожидается, что благодаря данной скоростной и практически защищенной платформы сократится время, которое требуется для подготовки и передачи прикладной программы юзеру. Привлекательность ГИП или Графического Интерфейса Пользователя – так же является одним из факторов, склоняющих пользователей к использованию архитектуры клиент-сервер [[9]].

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

Ну и в завершение можно сказать, что клиент-сервер — это технология, дарующая больше самостоятельности пользователям. Прикладные программы и данные располагаются в ёмких и соответственно более доступных системах, а не в недрах мощных вычислительных центров или мини-эвм.

Самой простой формой архитектуры клиент-сервер является – деление вычислительной нагрузки на два отдельных процессора: клиент и сервер. Чаще всего в качестве клиента используется обычный настольный компьютер, с запущенным программным обеспечением конечного пользователя. Программное обеспечение конечного пользователя представляет собой любой прикладной пакет или программу, которые способны направлять запросы по сети на сервер и обрабатывать информацию, получаемую в ответ. Сервер, в таком случае уже получает запросы и предпринимает действия от имени клиента. Промежуточное обеспечение интересно как для программного обеспечения конечного пользователя, так и для сервера, проникающее сквозь слои ГИП, ОС, вычислительной сети, а также собственных драйверов базы данных с помощью общих вызовов. Для завершения операции сервер базы данных отправляет запрос, а после чего отсылает клиенту затребованные им данные для обработки этих данных уже программой клиента [[10]].


Понятия клиент и сервер, а также закреплённые за ними роли создают,

программную концепцию «клиент-сервер». Модель клиент-сервер является еще одним подходом к структурированию ОС.

Если рассматривать модель клиент-сервер в общих словах, то она, несомненно, подразумевает наличие программного компонента, то есть потребителя какого-либо сервиса - клиента, а также программного компонента - поставщика этого самого сервиса, то есть сервера. Процесс взаимодействия между сервером и клиентом является стандартной процедурой, поэтому сервер может обслуживать клиентов, множеством различных способов и, может быть, разно-производительным. В таком случае главным требованием является то, чтобы клиенты запрашивали услуги сервера понятным для него способом [[11]]. Инициатором обмена практически всегда является клиент, который отсылает запрос на обслуживание серверу, находящемуся в режиме ожидания запроса. Один и тот же программный компонент может быть как клиентом, так и сервером в зависимости от вида услуг [[12]].

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

Клиент, которым может быть либо прикладная программа, либо другой компонент ОС - запрашивает сервис, по средством отсылки сообщения на сервер. Ядро операционной системы или микроядро, совершая работу в привилегированном режиме, доставляет сообщение релевантному серверу, а в свою очередь сервер выполняет данную операцию, после чего уже ядро возвращает полученные результаты клиенту с помощью ответного сообщения [[13]]. Для взаимодействия с клиентом или клиентами (при наличии возможности параллельного взаимодействия), сервер выделяет требуемые ресурсы меж-процессного взаимодействия (сокет, пайп, разделяемая память итд) и переходит в ожидание запроса на открытие соединения или запросов на предоставляемый сервис. В зависимости от типологии ресурса, сервер сможет обслуживать процессы в пределах одной компьютерной системы либо процессы на других машинах через каналы передачи данных – к примеру сетевые соединения или COM-порт [[14]].


Формат запросов клиента и ответов сервера определяется протоколом. Спецификации открытых протоколов описываются открытыми стандартами, например, протоколы Интернета определяются в документах RFC.

В зависимости от выполняемых задач одни серверы, при отсутствии запросов на обслуживание, могут простаивать в ожидании. Другие могут выполнять какую-то работу (например, работу по сбору информации), у таких серверов работа с клиентами может быть второстепенной задачей [[15]].

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

Клиент — это рабочая станция, задача, или пользователь компьютерной сети. В процессе обработки данных клиент сформировывает запрос на сервер для выполнения сложных процедур, таких как поиск информа­ции в базе данных или чтение файла [[16]]. Подразумевается, что сервер обладает жёстким диском с достаточно большой ёмкостью, на котором может храниться коллегиально исполь­зуемая централизованная база данных. Все прочие машины сети выполняют функции клиентов или рабочих станций, с помощью которых поддерживается постоянный дос­туп пользователей системы к централизованной базе данных. В соответствии с пользовательскими запросами - файлы базы данных перемещаются на рабочие станции, где в основном и производится их обработка данных файлов. Рабочая станция должна иметь достаточно ресурсов для обеспечения приемлемого уровня производительности, что в свою очередь сильно ускорит обработку [[17]].

Согласно концепции «клиент — сервер» сервер в данном случае используется не только как хранилище данных и программ, но и как вычислительная среда. Про­граммное обеспечение в рассматриваемой модели состоит из нескольких взаимо­связанных программ: программы клиента-пользовате­ля и «файл-сервера». Программа-клиент сформировывает запрос и предаёт файл запроса на сервер - программе, установленной на компьютере с общим доступом. Обработка данных происходит на мощном компьютере общего пользования, а на компьютере-клиенте с помощью соответствующего протокола выводятся результаты выполненного запроса.


1.4. Основные роли архитектуры «Клиент-Сервер».

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

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

  • Атомарность – все операции транзакции будут выполнены вне зависимости от обстоятельств, либо не будет выполнена ни одна.
  • Целостность данных при завершении транзакции.
  • Независимость – транзакции не вмешиваются в дела друг друга, если были инициированы разными пользователями
  • Устойчивость к сбоям – результаты транзакции не продадут после её завершения [[18]].

Механизм транзакций, с поддержкой сервера баз данных, является намного более эффективным, нежели чем аналогичный механизм с поддержкой настольных СУБД. Это происходит так как сервер централизованно контролирует работу всех транзакций. Кроме того, при «файл-серверной системе» сбой произошедший на любой из рабочих станций иногда приводит к потере данных и их недоступности для других рабочих станций, в то время, как при «клиент-серверной системе» сбой на клиенте, практически, никогда не скажется на целостности данных или их доступности для других клиентов сети.

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

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

Системы, выстроенные на основе серверов баз данных в силах поддерживать сотни гигабайт информации и тысячи пользователей одновременно – естественно при наличии соответствующей аппаратной платформы [[19]].