我想了解几点:
using-SOA 是否意味着我正在使用 Web 服务?(或反之亦然?)
如果我通过 CXF 使用 Web 服务,我需要 ESB 吗?像 MULE 这样的 ESB 在带有 Web 服务的架构中的优势是什么?
如果我用 Java 发布我的 Web 服务,这是否意味着任何拥有我的 WSDL 的客户都可以使用我的服务,即使他/她使用 .NET 或 Java 以外的其他东西?ESB 可以处理吗?
我想了解几点:
using-SOA 是否意味着我正在使用 Web 服务?(或反之亦然?)
如果我通过 CXF 使用 Web 服务,我需要 ESB 吗?像 MULE 这样的 ESB 在带有 Web 服务的架构中的优势是什么?
如果我用 Java 发布我的 Web 服务,这是否意味着任何拥有我的 WSDL 的客户都可以使用我的服务,即使他/她使用 .NET 或 Java 以外的其他东西?ESB 可以处理吗?
using-SOA 是否意味着我正在使用 Web 服务?(反之亦然?) - SOA 是一个概念,而 Web 服务是 SOA 的一种实现。可以有很多方法来实现它,但最常见的一种是 Web 服务。
ESB 是 SOA 中的主要组件。它是主要的集成中心。
下图将使您对 SOA 和 ESB 有更多的了解。(免责声明:我为 WSO2 工作,这是让您清楚了解 SOA 和 ESB 的图表之一)
http://4.bp.blogspot.com/_yO8q3CIhuZs/S-Zq88vkJlI/AAAAAAAAAak/QAJeDVXVL_4/s1600/wso1.png
如果您谈论的是 Web 服务,这意味着它们独立于编程语言。当然 ESB 可以处理它,并且它可以处理许多其他协议,因为它是集成中心。
不幸的是,仅使用特定技术并不能作为您正在执行 SOA 的具体证据,正如 Kasun Indrasiri 在其他回复中所说,SOA 是一种概念,一种可以使用来自不同供应商的各种工具来实现的技术。
如果您正在按照SOA 原则设计服务,那么您可能会使用 SOA,即使您使用的工具不具备其他现代平台中存在的所有功能。
在我看来,如果您的公司没有数百万美元的预算来购买软件许可证,您仍然可以使用当前工具从 SOA 中受益。