Обзор архитектуры CORBA

Обобщенная Архитектура построения Брокеров Объектных Запросов разработана для поддержки интеграции самых разнообразных объектных систем. Спецификация CORBA устанавливает принципы создания Брокеров Объектных Запросов, которые и допускают такую интеграцию.

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

Рис.1 Схема взаимодействия клиента и сервера

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

Понятия клиент-сервер и объект - два любимых конька идеологии CORBA. Два последних революционных открытия в сфере компьютерных технологий времени объединились в одном стандарте, дополнив друг друга. В пространстве CORBA объект становится, интеллектуальной программной единицей, независимым компонентом - законченной частью программного кода со следующими особенностями:

- компонент может стать предметом купли-продажи на рынке программных средств;

- компонент сам по себе не является приложением;

- компонент может быть использован в таких условиях, которые никак не мог предугадать разработавший его программист;

- компонент не зависит от адресного пространства, сетевого протокола, алгоритмических языков, операционных систем, средств программирования;

- компонент имеет хорошо развитый интерфейс.

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


[назад][содержание][вперед]

Hosted by uCoz