Корба такая же, как СОА?

в последнее время я много смотрю на SOA. Разве Корба не то же самое, что СОА?

7 ответов


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

CORBA, безусловно, реализует большую часть поверхности SOA, но я не думаю, что вы могли бы сказать, что он делает это полностью (что бы это ни значило). SOA может быть немного расплывчатым.


в дополнение к уже упомянутому факту, что SOA является архитектурой, а CORBA-конкретной реализацией.

CORBA не реализует SOA

главное отличие в том, что Корба-это объект или компонент ориентированный и SOA сервис ориентацией

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


разница между CORBA и SOA заключается в том, что CORBA-это конкретная технология, тогда как SOA-это стиль архитектуры.


Хотя нет "официального" определения SOA, часть его заключается в том, чтобы отделить различные службы друг от друга. Это включает в себя возможную развязку реализации (платформы и технологии), используемой в службе. В качестве примера, если вы предоставляете услугу через веб-сервисы, любой клиент-это java/python / .Net и т. д... может потреблять эту услугу , но использование RPC / remote procedure call framework часто связывает вас с определенной платформой/реализацией, чтобы вызвать услуга.

Corba предлагает некоторые из обещаний SOA, но в лучшем случае является подмножеством того, что SOA "должно быть"

основное отличие заключается в том, что SOA является общей архитектурной концепцией, а Corba-технологической реализацией концепции RPC/Remoting


Не совсем так. SOA-это архитектурный стиль, а CORBA-особая технология, с помощью которой вы можете реализовать SOA.


CORBA и SOA являются архитектурами. Неправильно говорить, что Корба-это реализация. Это не. Это архитектура, видение систем, построенных с помощью объектов. SOA - это также архитектура, видение систем, построенных с помощью сервисов. Они оба являются способами организации ваших систем как коллекции объектов или служб. Существуют конкретные реализации для CORBA, а также для SOA.

Это обе технологии. Они оба дают вам квитанции и рекомендации для структурирование систем и управление сложностью. Существуют инструменты, разработанные третьими сторонами для поддержки этих технологий для обоих из них.

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

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


Они по своей сути разные, потому что один зависит от технологии (CORBA), а другой-нет.

  • CORBA-это открытый стандарт, разработанный OMG (Object Management Group) для промежуточного программного обеспечения use ORB (object request broker) с большим акцентом на совместимость (программные платформы, аппаратные платформы и языки программирования).
  • SOA-это стиль разработки программного обеспечения, где услуги предоставляются другим компонентам компонентами приложения, через коммуникационный протокол по сети. Основные принципы сервис-ориентированной архитектуры является независимой от поставщиков продуктов и технологий.

У меня были те же сомнения, что и у вас, потому что определение SOA слишком широкое, и я вижу, что многие понятия CORBA могут быть сопоставлены с терминологией SOA. Например, в CORBA клиенты (объекты) просят серверы (также объекты) выполнить некоторую работу через протокол связи по сети. Кроме того, CORBA реализации предоставляют общие услуги, такие как ведение журнала и поддержка событий. Я думаю этой ссылке суммирует отношение между CORBA и SOA:

первая сервис-ориентированная архитектура для многих людей в прошлом была с использованием брокеров запросов объектов (ORBs) на основе спецификации CORBA. Спецификация CORBA отвечает за действительно повышение осведомленности о Сервис-ориентированных архитектурах.