Системная архитектура клиент-сервер 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Системная архитектура клиент-сервер



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

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

Общим решение проблемы мобильности систем, основанным на архитектуре клиент-сервер, является опора на программные пакеты, реализующие удаленный вызов процедур (Remote Procedure Call).

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

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

Сервера баз данных

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

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

Серверы БД, интерфейс которых основан на языке SQL, обладают своими преимуществами и недостатками.

Преимущества: стандартный открытый интерфейс, т. е. клиентская часть любой ориентированной СУБД может работать с любым SQL-сервером независимо от того, когда компания его разработала.

Недостатки. При высоком уровне интерфейса между клиентской и серверной частями системы со стороны клиента работает слишком мало программ СУБД. Это нормально, если на стороне клиента используется маломощная работающая станция. Но если клиентский компонент обладает достаточной мощностью, то часто возникает необходимость возложить на него большие функции управления БД. Разгрузить сервер, который в этом случае является узким местом этой системы. Одним из корректных направлений СУБД является гибкая конфигурированная система, при которой распределяются функции между клиентской и пользовательской системами.



Поделиться:


Последнее изменение этой страницы: 2017-02-19; просмотров: 269; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.17.68.14 (0.007 с.)