SOA vs Web服务
Web服务用于构建可以使用HTTP使用SOAP发送/接收消息的应用程序。Web服务是通过网络提供的公开功能包。SOA是一套用于开发和集成服务的建筑概念。Web服务可用于实现SOA。但这只是一种实现基于SOA的应用程序的一种方法。
什么是Web服务?
Web服务是通过网络通信的一种方法。根据W3C的说法,Web服务是一个专门用于在网络上支持机器对机器交易的系统。它是WSDL(Web服务描述语言)中描述的Web API,Web服务通常是独立的和自称的。可以使用UDDI(通用描述,发现和集成)协议发现Web服务。通过通常通过HTTP(带有XML)交换SOAP(简单对象访问协议)消息,其他系统可以与Web服务进行交互。
Web服务以RPC(远程过程呼叫),SOA(面向服务的体系结构)和REST(代表性状态传输)等方式使用。有两种用于开发Web服务的自动化设计方法。自下而上的方法涉及首先创建类,然后使用WSDL生成工具将这些类作为Web服务组成。自上而下的方法涉及定义WSDL规范,然后使用代码生成工具生成相应的类。Web服务有两个主要用途。它们可以用作可重复使用的应用程序组件和 /或连接在不同平台上运行的Web应用程序。
什么是SOA?
SOA(面向服务架构)是一套基于“增大化现实”技术chitectural concepts used for the development and integration of services. SOA deals with distributed computing, in which, consumers consume a set of interoperable services. Multiple consumers can consume a single service and vice versa. Therefore, SOA is often used to integrate multiple applications that use different platforms. For SOA to properly operate, services should be loosely coupled with operating systems and the technologies of underlying applications. SOA developers create services using units of functionality, and make them available over the internet. Web services can be used to implement SOA architecture. In that case, web services become the units of functionality of SOA accessible over the internet. Web services can be used by anybody without being concerned about the platforms or the programming languages used for developing them. SOA is directly built upon the principle of service-orientation, which talks about services with simple interface that can be accessed independently by users without worrying about the actual platform implementation of the service.
SOA和Web服务有什么区别?
Web服务和SOA之间存在一些关键差异。Web服务定义了一种可用于构建可以使用HTTP SOPA发送 /接收消息的应用程序的Web技术。但是,SOA是一种用于实施基于服务的应用程序的架构模型。Web服务可用于实现SOA应用程序。即使对SOA的Web服务方法变得非常流行,但它只是实施SOA的一种方法。SOA可以使用任何其他基于服务的技术(例如CORBA和REST)实施。
发表评论