Corba 与 SOA 相同吗?

发布于 2024-08-25 06:35:26 字数 46 浏览 1 评论 0原文

我最近对 ​​SOA 进行了很多研究。 CORBA 和 SOA 不是一回事吗?

I have been looking a lot at SOA recently. Isn't CORBA exactly the same thing as SOA?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

别挽留 2024-09-01 06:35:26

除了已经提到的事实之外,SOA 是一种架构,而 CORBA 是一种具体的实现。

CORBA 没有实现 SOA,

主要区别在于 CORBA 是面向对象组件的,而 SOA 是面向服务

主要技术区别(在我的观点是,在 SOA 中您可以传递消息(或数据对象),而在 CORBA 中您可以传递通用对象(可以有方法)
因此,尽管您可以使用 CORBA 实现 SOA(通过将您自己限制为功能的子集),但使用 CORBA 的标准方法并不是面向服务的。

In addition to the fact already mentioned, that SOA is an architecture, and CORBA a specific implementation.

CORBA doesn't implement SOA

the main difference is that CORBA is Object Oriented or Component Oriented and SOA is Service Oriented

The main technical difference (in my opinion) is that in SOA you pass messages (or data objects) and in CORBA you can pass generic objects (which can have methods)
so although you can implement SOA using CORBA (by limiting you self to a subset of the functionality), the standard way of using CORBA isn't service oriented.

何处潇湘 2024-09-01 06:35:26

CORBA 和 SOA 之间的区别在于 CORBA 是一种特定的技术,而 SOA 是一种体系结构风格。

The difference between CORBA and SOA is that CORBA is a specific technology, whereas SOA is a style of architecture.

み青杉依旧 2024-09-01 06:35:26

SOA 作为一个概念已经存在多年,但直到最近才被如此命名。可以说有很多技术可以实现 SOA——无论是完全实现还是部分实现。 CORBA 可以说是其中之一,尽管创建 CORBA 时还没有这个术语。

CORBA 当然实现了 SOA 表面区域的很大一部分,但我认为您不能说它完全做到了这一点(无论这意味着什么)。 SOA 可能有点模糊。

SOA as a concept has been around for years, but was only more recently named as such. There are many technologies that can be said to implement SOA - either completely, or aspects of it. CORBA could be said to be one of them, although the term wasn't around when CORBA was created.

CORBA certainly implements are large part of the SOA surface area, but I don't think you could say it does so completely (whatever that means). SOA can be a bit vague.

墨落画卷 2024-09-01 06:35:26

虽然 SOA 没有“官方”定义,但它的部分目的是使各种服务彼此解耦。这包括可能解耦服务中使用的实现(平台和技术)。举个例子,如果通过 WebServices 公开一项服务,任何客户端(无论是 java/python/.Net 等)都可以使用该服务 - 但利用 RPC/远程过程调用框架通常会将您绑定到特定的平台/实现中命令调用该服务。

Corba 确实提供了 SOA 所承诺的一些功能,但充其量只是 SOA 的“本意”的一个子集。

不过,主要区别在于 SOA 是一个通用架构概念,而 Corba 是 RPC/Remoting 概念的技术实现

While there is no "official" definition of SOA, part of the point of it is to decouple the various services from each other. This includes possibly decoupling the implementation (platform and technology) used in the service. As an example if one exposes a service via WebServices, any client be it java/python/.Net etc... could consume this service - but utilizing a RPC/remote procedure call framework will often tie you into a particular platform/implementation in order to call the service.

Corba does offer some of what SOA promises, but is at best a subset of what SOA is "meant to be"

The main difference though is that SOA is a general architectural concept, while Corba is a technology implementation of the RPC/Remoting concept

深者入戏 2024-09-01 06:35:26

并不真地。 SOA 是一种架构风格,而 CORBA 是一种可以用来实现 SOA 的特定技术。

Not really. SOA is an architectural style while CORBA is a particular technology with which you can implement SOA.

穿透光 2024-09-01 06:35:26

CORBA 和 SOA 都是架构。说 CORBA 是一种实现是错误的。它不是。它是一种架构,是用对象构建系统的愿景。 SOA 也是一种架构,一种用服务构建系统的愿景。它们都是将系统组织为对象或服务集合的方法。 CORBA 和 SOA 都有特定的实现。

它们都是技术。它们都为您提供有关构建系统和管理复杂性的收据和建议。第三方开发了一些工具来支持这两种技术。

公共 ORB 体系结构 (CORBA) 中的对象提供服务,因此您可以考虑面向服务的体系结构 (SOA) 和公共 ORB 体系结构之间的转换。它们不是一回事,但是我们可以想象用其中之一来实现一个软件系统,从某种角度来看,它们是等效的。

它们不是同一件事,就像面向对象编程和结构化编程或函数式编程不是同一件事一样,尽管人们可以使用上述任何一种编程风格来实现某种功能。

CORBA and SOA are both architectures. It is wrong to say CORBA it is an implementation. It is not. It is an architecture, a vision of systems build with objects. SOA is also an architecture, a vision of systems build with services. They both are ways to organize your systems as a collection of either objects or services. There are specific implementations for CORBA as well as for SOA.

They are both technologies. They both give you receipts and recommendations for structuring your systems and for managing complexity. There are tools developed by third parties to support these technologies for both of them.

The objects in a Common ORB Architecture (CORBA) provide services so you can think of a translation between Service Oriented Architecture (SOA) and Common ORB Architecture. They are not the same thing, but one can imagine implementing a software system with either the one or the other, making them, from a certain point of view, equivalent.

They are not the same thing in the same way as Object Oriented Programming and Structured Programming or Functional Programming are not the same thing, although one could use any of the above mentioned programming styles to implement a certain functionality.

听风念你 2024-09-01 06:35:26

它们本质上是不同的,因为一个依赖于技术 (CORBA),而另一个则不依赖。

  • CORBA 是由 OMG(对象管理组织)为使用 ORB(对象请求代理)中间件开发的开放标准,非常注重互操作性(软件平台、硬件平台和编程语言)。
  • SOA 是一种软件设计风格,其中应用程序组件通过网络上的通信协议向其他组件提供服务。面向服务架构的基本原则独立于供应商、产品和技术。

我和你有同样的疑问,因为 SOA 的定义太宽泛,而且我可以看到 CORBA 的许多概念可以自然地映射到 SOA 的术语。例如,在 CORBA 中,客户端(对象)请求服务器(也是对象)通过网络上的通信协议完成某些工作。此外,CORBA 实现还提供日志记录和事件支持等通用服务。我认为这个链接总结了CORBA和SOA之间的关系:

过去,对于许多人来说,第一个面向服务的体系结构是使用基于 CORBA 规范的对象请求代理 (ORB)。 CORBA 规范负责真正提高对面向服务的体系结构的认识。

They are inherently different because one depends on the technology (CORBA) and the other doesn't.

  • CORBA is an open standard developed by the OMG (Object Management Group) for the use ORB (object request broker) middleware with a great focus on interoperability (software platforms, hardware platforms and programming languages).
  • SOA is a style of software design where services are provided to the other components by application components, through a communication protocol over a network. The basic principles of service-oriented architecture are independent of vendors, products and technologies.

I had the same doubt as you because the definition of SOA is too broad and I can see many concepts of CORBA can be mapped naturaly to SOA's terminology. For example in CORBA, clients (objects) ask to servers (also objects) to do some work through a communication protocol over a network. Moreover CORBA implementations provide general services like logging and event support. I think this link summarizes the relation between CORBA and SOA:

The first service-oriented architecture for many people in the past was with the use of Object Request Brokers (ORBs) based on the CORBA specification. The CORBA specification is responsible for really increasing the awareness of service-oriented architectures.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文