Открыть сервис

CORBA

CORBA (Common Object Request Broker Architecture — общая архитектура брокеров объектных запросов) — это стандарт распределённых вычислений, определяющий инфраструктуру для взаимодействия программных объектов, написанных на разных языках программирования и работающих на различных операционных системах в гетерогенной сети. CORBA предоставляет средства для вызова удалённых методов (RPC) и обмена данными между объектами, скрывая детали их физического расположения и реализации.

История

Разработка CORBA началась в 1989 году в рамках консорциума Object Management Group (OMG), объединившего более 800 компаний, включая IBM, Sun Microsystems, Hewlett-Packard и Microsoft. Основной целью было создание открытого, независимого от платформы стандарта для построения распределённых приложений. Первая спецификация CORBA 1.0 была выпущена в 1991 году и включала определение интерфейсного языка IDL и базовой архитектуры брокера объектов. В 1995 году вышла версия 2.0, которая ввела протокол GIOP (General Inter-ORB Protocol) и его реализацию IIOP (Internet Inter-ORB Protocol), что позволило взаимодействие между разными реализациями CORBA через TCP/IP. Версия 3.0, принятая в 2002 году, добавила поддержку асинхронного обмена сообщениями, компонентную модель CORBA (CCM) и интеграцию с веб-службами. Наибольшую популярность CORBA приобрела в корпоративном секторе в 1990-х годах, но к середине 2000-х уступила позиции более простым технологиям, таким как веб-службы SOAP, REST и платформа Java EE, из-за сложности реализации, высокой стоимости внедрения и проблем с производительностью.

Архитектура

Архитектура CORBA основана на модели «брокера объектных запросов» (ORB — Object Request Broker), который выступает в роли посредника между клиентом и серверным объектом. Основные компоненты:

Классификация и виды

Реализации CORBA можно разделить по двум основным категориям:

По типу ORB

По языку программирования

Устройство и характеристики

Работа CORBA строится на модели удалённого вызова методов (RMI). Клиент вызывает метод объекта-заглушки (stub), которая передаёт запрос через ORB локального брокера. ORB использует протокол GIOP/IIOP для передачи сообщения на сторону сервера, где ORB сервера передаёт вызов скелету, а тот — реальному объекту-реализации. Результат возвращается обратным путём.

Ключевые характеристики:

Применение

Основные области применения CORBA:

К концу 2020-х годов CORBA практически полностью вытеснена веб-службами (SOAP, REST) и микросервисными архитектурами, но сохраняет применение в унаследованных (legacy) системах, особенно в оборонном и авиационном секторах, где замена требует больших затрат.

Примеры

Критика

Основные недостатки CORBA:

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →