Вопрос

В последнее время я много смотрю на SOA.Разве CORBA не то же самое, что SOA?

Это было полезно?

Решение

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

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

Другие советы

Помимо уже упомянутого факта, что SOA — это архитектура, а CORBA — конкретная реализация.

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

Основное отличие состоит в том, что CORBA Объект Ориентированный или Компонент Ориентация и SOA Услуга Ориентированный

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

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

Хотя «официального» определения SOA не существует, его смысл отчасти состоит в том, чтобы отделить различные сервисы друг от друга.Это включает, возможно, разделение реализации (платформы и технологии), используемой в сервисе.Например, если кто-то предоставляет службу через WebServices, любой клиент, будь то java/python/.Net и т. д.может использовать эту службу, но использование структуры RPC/удаленного вызова процедур часто привязывает вас к конкретной платформе/реализации для вызова службы.

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

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

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

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

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

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

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

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

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top