Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
92
Добавлен:
07.02.2016
Размер:
789.52 Кб
Скачать

Распределенные компьютерные системы и их характеристики

Современные тенденции в экономике, науке и технике вызывают растущую потребность в распределительных системах.

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

Чтобы быть взаимосвязанными узлы должны иметь возможность обмениваться информацией. Наиболее известными распределенными системами является Internet и intranet. Распределенные системы имеют специфические характеристики которые не присущи обычным системам. К ним относятся:

  1. Параллельность. Программные компоненты, выполняющие распределенную обработку, могут работать параллельно.

  2. Независимые отказы. Аппаратные и программные компоненты могут отказывать независимо друг от друга.

  3. Отсутствие глобального времени. У каждого компонента распределенной системы имеются свои часы, которые могу показывать разное время.

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

  5. Несогласованное состояние. Компоненты могут быть в разных состояниях (сна, занятости и т.д).

Промежуточное программное обеспечение распределенных компьютерных систем

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

В основе middleware лежит концепция RPC (Remote Procedure Calls) - вызова удаленных процедур.

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

При этом система RPC должна решать ряд задач:

  1. Трансформировать сложные типы данных приложений (вызовы и результаты удаленных процедур) в транспортное представление (поток байт или дейтаграммы транспортных протоколов). Этот процесс называется маршаллингом.

Кроме того, выполнить обратное преобразование – демаршаллинг.

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

На рисунке ниже приведена общая архитектура системы RPC.

Центральным архитектурным элементом является стабы (stub). В системе RPC они выполняют синхронизацию, маршаллинг, демаршаллинг и сетевые коммуникации. RPC включает в себя службу называемую реестром RPC (registry). С помощью нее серверы находят себя в сети.

Интерфейс активации RPC предназначен для вызова и загрузки байт-кода серверной программы.

Во всех системах RPC используется некоторая разновидность языка определения интерфейсов IDL (Interface Definition Language). Он используется для определения удаленной процедуры.

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

JAVA RMI

RMI (Remote Method Invocation) – удаленный вызов методов, одна из технологий создания распределенных приложений на языке java.

Определение удаленной службы осуществляется с помощью интерфейса java, а реализация удаленной службы - в отдельном классе. Архитектура JAVA RMI приведена на рисунке ниже:

Соседние файлы в папке [КОМП СИСТЕМЫ]