Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа - Технология клиент-сервер в БД и ПО промежуточного слоя.doc
Скачиваний:
65
Добавлен:
02.05.2014
Размер:
166.4 Кб
Скачать
  1. Среда систем клиент – сервер

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

Рисунок 1.1. - Простейшая среда клиент-сервер

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

• создание и проверка допустимости запросов к базе данных и операций модификации данных;

• получение информации с сервера и представление результатов пользователю в соответствии с заранее определенными экранными формами или шаблонами;

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

На рисунке 1.1. приведено концептуальное представление типичной среды клиент-сервер.

Конфигурации и архитектуры клиент-сервер могут существовать как в локальных сетях (Local Area Network, LAN), в сетях крупных городов (Metropolitan Area Network, MAN) или в больших территориальных сетях (Wide Area Network, WAN), так и на одном процессоре (где, например, один процесс выполняет функции клиента, а другой - функции сервера). В этой главе мы сосредоточим свое внимание на распределенных архитектурах клиент-сервер.

Архитектура клиент-сервер дает множество преимуществ в организации информационных систем.

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

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

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

  1. Основные принципы и критерии оценки систем клиент – сервер

Ниже приведены основные принципы и критерии оценки систем клиент-сервер.

  1. Переносимость означает возможность переноса как клиентской, так и серверной либо их обеих на новую платформу без нарушения работоспособности среды приложений (рисунок 2.1.)

Рисунок 2.1. - Переносимость в среде клиент-сервер

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

Рисунок 2.2. - Взаимозаменяемость в среде клиент-сервер

  1. Сохранение автономности сервера. Клиенты должны следовать правилам, установленным серверами; они не должны ограничивать доступность серверов и не должны нарушать целостность каких-либо данных сервера.

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

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

  4. Доступность специфических средств сервера. Клиент может запросить некоторые специфические функции конкретного сервера для более качественного выполнения работы.

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

  6. Минимум дополнительных требований к рабочей станции для доступа к серверу. Программное обеспечение клиента не должно быть ресурсоемким.

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

  8. Возможность локального прототипирования. Удаленность информации не должна препятствовать возможности прототипирования пользовательских приложений.

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

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

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

Рисунок 2.3. - Доступ, основанный на архитектуре клиент-сервер

  1. Следование стандартам. Чем в большей мере будут поддерживаться стандарты, тем меньше будет возникать проблем с интероперабельностью компонентов.