Главная страница

Архитектура распределенных систем программного обеспечения. Учебное пособие издано при поддержке образовательной программы Формирование


Скачать 1 Mb.
НазваниеУчебное пособие издано при поддержке образовательной программы Формирование
АнкорАрхитектура распределенных систем программного обеспечения
Дата13.01.2023
Размер1 Mb.
Формат файлаdocx
Имя файлаmdwrbook.docx
ТипУчебное пособие
#885216
страница12 из 36
1   ...   8   9   10   11   12   13   14   15   ...   36

Архитектура CORBA


средства CORBA





Рис.2.14.АрхитектураCORBA.

Система, подчиняющаяся спецификации CORBA, состоит из трех основных частей (Рис. 2.14):

          • брокер запросов объектов, содержащий базовые функции взаимодействия объектов.

          • службыCORBA, доступные с помощью стандартизованного

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

          • средстваCORBA это набор средств и инструментов верхнего

уровня, необходимых не индивидуальным объектам, а приложениям. Средства CORBA могут также включать службы, специфичные для отраслевых рынков, например, образования, здравоохранения или транспорта.
        1. Работа CORBA


Чтобы к объекту можно было обратиться через брокер объектов, этот объект должен сначала объявить свой интерфейс, из чего клиенты узнают о методах, которые он предоставляет. Интерфейсы описываются на IDL.

interface Purchasing {

float getQuote (in long productId);

float purchaseGoods (in long productId,

in long quantity)

}

IDL поставщика службы





прикладной объект

(клиент)


прикладной объект

(поставщик службы)








Рис.2.15.СпецификацииIDLтранслируютсявскелетонынасторонесервераив переходники на стороне клиента.

На Рис. 2.15 показан пример спецификации IDL-интерфейса для объекта, обеспечивающего функции поддержки цепочек поставок товаров. В дополнение к описанию методов, в отличие от систем на базе RPC, язык IDL спецификации CORBA поддерживает множество объектно- ориентированных концепций, например, наследование и полиморфизм. Как и в случае RPC, спецификации, написанные на IDL, могут быть переданы компилятору с этого языка, который формирует заместителя объекта и скелетон. Заместитель объекта – это переходник, ответственный за сокрытие распределенности, его задача – представить вызовы не удаленными, а локальными. Программа заместителя содержит в себе описание методов, предоставляемых реализацией объекта. Для получения готового клиентского приложения, она должна быть загружена вместе с программой клиента. С другой стороны скелетон защищает от проблем распределенности сервер, поэтому сервер может разрабатываться так, как если бы вызовы к нему поступали из локального окружения. Как заместитель, так и скелетон могут быть написаны на любом из тех языков,

которые поддерживаются компилятором с языка IDL (например, спецификация CORBA 3 поддерживает трансляцию с IDL на Си, Си++, Java, Smalltalk, Аду, Кобол, Лисп, PL/1, Python и IDLScript).

Современные версии спецификации CORBA допускают и обратные отображения: например, в стандарте CORBA 3 предусмотрено проведение отображения записи интерфейсов на языке Java в записи интерфейсов на IDL. Обратное отображение позволяет программистам на языке Java создавать объекты, доступные из других приложений, написанных (возможно) на других языках программирования. Обработка программы на языке Java обратным компилятором позволяет получить эквивалентный интерфейс, написанный на IDL, имея который, можно построить (на языке Java или другом языке программирования) программу клиента CORBA, имеющую доступ к нужному объекту.
        1. 1   ...   8   9   10   11   12   13   14   15   ...   36


написать администратору сайта