Рассмотрим по отдельности два случая (как две стороны жизни CORBA) – статический и динамический, применительно к использованию РОА и сопутствующих элементов.

Статический случай

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

Адаптер POA поддерживает два типа статических сервантов.

Динамический случай

Примером может служить односторонний мост к другим распределенным системам (в частности – СОМ, Сommon Object Model). Клиент СОRВА посылает запрос к объекту, реализованному на СОМ. Когда к системе присоединяются интерфейсы СОМ нового типа, клиенты должны иметь возможность работать с ними без остановки системы и перекомпиляции. Интерфейс Динамических Скелетонов поддерживает такие ситуации и позволяет сервантам в реальном времени определять детали интерфейса и операций, вызывающих конкретный объект. Обычно используется Репозитарий Интерфейсов, который «на лету» предоставляет подробности динамических интерфейсов.

В отличие от Основного Адаптера, в Портируемом Объектном Адаптере предусмотрена многопотоковость. В этой области POA предоставляет следующие возможности.

Выбор конкретной потоковой политики зависит от программных приложений распределенной среды.

На более высоком уровне ORB CORBA 3 предоставляет две модели многопоточности.

У Вас разбегаются глаза? Не знаете, какую политику предпочесть? Как разобраться во всех этих новых возможностях? Действительно, богатство выбора заставляет задуматься. От «молотка» старого Основного Адаптера CORBA перешла к более сложному инструменту, им надо уметь пользоваться. Выбор той или иной модели POA должен быть сделан только после тщательного анализа создаваемой распределенной среды, целей и функций разрабатываемой системы, доступного оборудования. Но зато сколько новых элементов! Среди них менеджеры сервантов, политики РОА, гибкость присвоения индентификатора объекту, устойчивые и временные объекты, возможность хранения связей сервант-объект в Карте Активных Объектов. Можно воплотить любой воздушный замок.

Предыдующее       Следующее

Содержание