【发布时间】:2015-08-27 01:52:30
【问题描述】:
什么是面向服务的架构?
【问题讨论】:
标签: wcf architecture soa
什么是面向服务的架构?
【问题讨论】:
标签: wcf architecture soa
SOA 是开发面向服务的应用程序的方法,而 WCF 是可用于开发面向服务的应用程序的技术。但是 SOA 为应用程序定义了严格的规则(称为 SOA 原则)。如果您不遵循这些规则,那么您正在构建服务,但这些服务不符合 SOA。
WCF 允许您开发多种类型的服务。您可以开发符合 SOA 或不符合 SOA 的可互操作 SOAP 服务。您可以开发具有不可互操作特性的纯 .NET 服务,也可以开发 REST 服务。
此外,SOA 服务中的含义与 WCF 中的含义不同。在 WCF 中,服务是在端点上公开的功能集合。在 SOA 中,服务可以是整个应用程序(类似 WCF 的服务集)——小型和大型 SOA 之间的区别。
SOA 原则是:
如您所见,尤其是前两个原则在构建 WCF 服务时很容易被违反。
【讨论】:
SOA 是一种设计完整解决方案的方法,它是一组普遍接受的通信、状态管理、兼容性等实践。在软件架构中,SOA 是一组服务(不一定是 Web 服务),它们是独立构建以支持一系列客户端应用程序。模块化设计有助于维护、业务协作。 SOA 还提供了一些开发指南:
另一方面,WCF 只是一种支持技术,可帮助您在 .NET 中构建服务。
您可以在没有 WCF 的情况下创建 SOA,就像创建一堆 WCF 服务不会使您的架构成为面向服务的架构一样。
【讨论】:
面向服务的架构是一种软件架构概念,其中一个或多个服务相互交互。在这里,服务意味着完成某个目的的工作单元。例如,在线销售铁路车票是一项服务,在线酒店预订是一项服务,采购在线支付是一项服务等。现在,让我们考虑一家酒店公司通过自己的网站在线销售客房。在这种情况下,该网站正在使用本地服务。同一家酒店还可以通过第三方旅游门户网站销售客房。在第二种情况下,第三方旅行门户正在使用远程服务或 Web 服务。通过旅游门户在线销售酒店预订就是Service Oriented Architecture 的一个例子。在面向服务的体系结构中,两方或多方使用 Web 服务相互交互。其中,Web 服务提供者很少,Web 服务消费者也很少。可以通过使用 Web 服务遵循面向服务的体系结构来构建软件组件。 WCF 是一种构建服务的技术。
【讨论】:
WCF 是一种使构建服务更容易的技术,它不仅适用于 HTTP,而且适用于所有传输,因此它比仅适用于 Http 的 Web 服务更通用。
【讨论】:
SOA 只是一种方法,通过它我们可以使用 Web 服务在 .NET 和 JAVA 等不同技术之间进行交互。
为此,您必须了解如下所示的几件事。
了解了这些之后就可以轻松应用这个 SOA
【讨论】: