Промежуточное программное обеспечение распределенных компьютерных систем
Промежуточное программное обеспечение распределенных компьютерных систем (midleware) программное обеспечение осуществляющее взаимодействие между приложениями и сетевыми ОС.
В основе middleware лежит концепция RPC (Remote Procedure Calls) - вызова удаленных процедур.
Основная идея RPC обеспечить программистом приложений возможность вызова процедуры развернутой и выполняющейся на удаленном хосте, таким образом как если бы вызывалась локальная процедура.
При этом система RPC должна решать ряд задач:
Трансформировать сложные типы данных приложений (вызовы и результаты удаленных процедур) в транспортное представление (поток байт или дейтаграммы транспортных протоколов). Этот процесс называется маршаллингом.
Кроме того, выполнить обратное преобразование – демаршаллинг.
Как правило, клиент вызывающий процедуру и сервер ее выполняющий работают параллельно, поэтому система 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 приведена на рисунке ниже:
- Оглавление
- Java-технологии распределенных компьютерных систем
- Инструментальные средства java для создания распределенных систем
- Первая java-программа
- Интерфейсы
- Наследование
- Import имя_пакета.*;
- Ссылки this и super
- Исключения
- Массивы
- Виртуальная машина java (jvm)
- Распределенные компьютерные системы и их характеристики
- Промежуточное программное обеспечение распределенных компьютерных систем
- Архитектура java rmi
- Достоинства и недостатки java-rmi
- Технология corba
- Достоинства и недостатки corba
- Структура распределенного j2ee java-приложения
- Hello World распределенное j2ee java-приложение Средства разработки
- Структура
- Код локального интерфейса
- Html. Основные теги html.
- Основные теги html
- Формы html-документов
- Cgi. Java web-сервер
- Сервлет-технология java
- Компоненты ejb
- Страницы jsp
- Теги и встроенные объекты jsp
- Основные теги jsp-страниц.
- Архитектуры распределенных приложений. Web-сервисы
- Jms. Архитектура jms