
- •1.1.Распределенные системы и приложения
- •1.2.Понятие о рсои
- •1.2.1Понятие распределенной системы
- •1.2.2Определение распределенной системы. Программные компоненты
- •1.3.Примеры рсои
- •1.4.Нефункциональные требования к рсои
- •Масштабируемость
- •Открытость
- •Неоднородность
- •Разделение ресурсов
- •Отказоустойчивость
- •1.5.Прозрачность в рсои
- •1.6.Организация распределенных объектов
- •Сохранные и нерезидентные объекты
- •Способы определения местонахождения ро
- •1.7.Общие сведения о технологии corba
2. Общие положения теории РСОИ
1.1.Распределенные системы и приложения
Распределенная система - это набор независимых компьютеров, представляющийся их пользователям единой объединенной системой.
В распределенной системе можно выделить два аспекта:
первый - все компьютеры автономны;
второй - для пользователей это единая система.
Распределенные приложения в Интернете чаще всего создаются на основе модели клиент-сервер - модели структурирования приложений или операционных систем путем разделения их на серверные процессы, каждый из которых предоставляет набор специализированных служб для клиентских процессов, причем каждый серверный процесс может взаимодействовать с одним или несколькими клиентскими процессами:
|
Рис. 1 |
Один из главных вопросов - как точно разделить клиента и сервера. Анализ приложений типа клиент-сервер, предназначенных для организации доступа к базам данных, привел к их логическому разбиению на три уровня:
уровень пользовательского интерфейса;
уровень обработки;
уровень данных.
Формы организации архитектуры клиент-сервер отличаются тем, какие задачи решаются клиентом и сервером:
Серверы – процессы, реализующие службы и предоставляющие к ним доступ.
Клиенты – процессы, использующие эти службы.
Рассмотрим на примере доступа к БД:
При трехуровневой организации системы имеем следующие логические уровни:
Пользовательский интерфейс (ПИ на рисунке).
Обработки (О).
Данных (непосредственная работа с БД).
Варианты физического разделения уровней между узлами:
На этом рисунке клиент «утолщается» слева направо.
Взаимодействие клиента с сервером происходит следующим образом:
2.12 Общие сведение об именовании объектов и службе именования
Взаимодействие клиента и сервера в Интернете осуществляется с помощью запросов, посылаемых клиентом серверу, и ответов сервера на запрос клиента:
|
Рис. 3 |
Суть распределенных систем - связь между процессами, реализующими не только взаимодействие компьютеров, но и частей (уровней) приложений. Взаимодействие частей приложений реализуется с помощью протоколов, описывающих состав и формат данных, пересылаемых соответствующими частями клиентских и серверных приложений друг другу для решения поставленной задачи. В Интернете разбиение приложений на части осуществляется на базе стека протоколов TCP/IP:
|
Рис. 4 |
Первоначально в Интернете существовала только возможность пересылки файлов (протокол FTP), почтовых сообщений (e-mail) и подключение компьютера как удаленного терминала сервера (TELNET). Технология World Wide Web (WWW) и производство доступных для пользователей средств коммуникации (модемы) изменили Интернет и сделали его основным средством получения и опубликования информации.
Основу WWW составляет гипертекстовый документ, создаваемый с помощью языка разметки гипертекстовых документов (HTML), и протокол передачи гипертекстовых документов (HTTP).
Суть гипертекстового документа заключена в том, что весь документ разбит на части, которые могут храниться не обязательно на одном компьютере в сети, а в соответствующие части документа встроены гиперссылки на его другие части:
|
Рис. 5 |
В настоящее время используется язык HTML версии 4.01, поддерживаемый организацией WWW-консорциум (www.w3.org).
Для передачи гипертекстовых документов применяется протокол HTTP версии 1.1 (RFC 2616).
Его основу составляют HTTP-сообщения, подразделяемые на:
запрос (request) клиента к серверу;
ответ (response) сервера клиенту.