(一)Web Service架构
Web Service架构通常指用于架构Web Service的整体技术架构,提供了运行于多种平台上的软件系统之间互操作的一种标准方法,其核心是互操作性。任何Web Service架构环境都少不了以下基本活动。
发布(Publish)服务:服务提供者向服务注册中心发布服务描述,以使服务使用者可以发现和调用,发布的信息包括与该服务交互必要的所有内容,如服务路径、传输协议以及消息格式等。
查找(Find)服务:服务请求者直接检索服务描述或在服务注册中心来查找和定位满足其标准的服务,查找服务的操作由用户或者其他服务发起。
绑定(Bind)服务:在绑定操作中,服务请求者根据服务描述中的绑定细节来定位、联系和调用服务,一旦服务请求者发现适合自己的服务,它将根据服务描述中的信息在运行时直接激活服务。
这些活动涉及5种基本角色:
服务(Service):Web Service是一个由服务描述来描述的接口,而服务描述的实现就是该服务。服务是一个软件模块,独立于技术的业务接口,部署在服务提供者提供的可以通过网络访问的平台上。
服务提供者(Service Provider):服务的创建者和拥有者,是一个可以通过网络访问的实体,它将自己的服务和服务描述发布到服务注册中心,以便于服务请求者来定位,也可以因为用户需求的改变而取消服务。
服务请求者(Service Requester):从服务注册中心定位其需要的服务,向服务提供者发送一个消息来启动服务的执行。它可以是一个请求的应用、服务或者其他类型的软件模块,完成发现提供所需服务的WSDL文档,以及与服务通信的功能。
服务注册中心(Service Registry):服务提供者在此发布自己的服务描述,服务请求者查找服务并获得服务的绑定信息,实现增加、删除、修改已发布的服务描述以及从注册表中查询服务的功能。
服务描述(Service Description):本质是服务内容的标准化描述,提供了服务内容、绑定类型、传输协议、服务地址等,生成相应的完全的文档,发布给服务请求者或服务注册中心。
(二)Web Service实现需要的协议规范
Web Service的实现需要一系列的协议规范进行支撑,包括XML语言、SOAP协议、WSDL协议和UDDI协议,即使用XML描述数据结构及类型,使用SOAP作为其信息传输协议,使用WSDL进行内容描述,使用UDDI注册与发现Web Service。
1.XML
XML(eXtensible Markup Language,扩展型可标记语言)是Web Service平台中表示数据的基本格式。与HTML使用标签来描述外观和数据不同,XML严格地定义可移植的结构化数据。可用于定义Web Service描述语言,例如,标记语法或词汇、交换格式、通信协议和契约等。XML具有易于建立、分析、结构化、平台无关等特点。在SOA架构中,所有服务描述都使用XML来表示。
2.SOAP
SOAP(Simple Object Access Protocol,简单对象访问协议)是Web Service的基本通信协议,Web Service依靠SOAP协议进行相互间的信息交换。SOAP是一个基于XML的通信协议,它在两台计算机之间交换消息而不需要考虑这两台计算机的操作系统、编程环境或对象模型框架。
SOAP主要规定了如何对两个Web Service之间交换的XML数据进行封装。但SOAP并没有描述Web Service的功能特性,也没有描述如何在交互的服务之间交换数据。因此,SOAP服务需要文档详细叙述被暴露的服务操作及这些操作的参数,WSDL主要用来解决这个问题。(www.xing528.com)
3.WSDL
WSDL(Web Service Description Language,Web Service描述语言)是一个基于XML的服务描述语言,用于描述Web Service暴露的所有接口的详细信息。在一个WSDL文档中,包含所有参数和Web Service方法名称的详细说明,以及Web Service的位置。
使用WSDL描述语言最大的优点在于WSDL是一个标准的协议。通过WSDL,任何系统都能够解释Web Service的方法和相应的信息。
在Web Service中,WSDL负责描述Web Services的内容,并描述其调用规范,使用户可对Web Service进行查询。
4.UDDI
UDDI(Universal Description、Discovery and Integration,统一描述、发现和集成)是一套基于Web的、分布式的,为Web Service提供的服务注册中心的实现标准规范,同时包含一组使企业能将自身提供的Web Service进行注册,使其他企业能够发现访问协议的实现标准。UDDI定义了一个集中式Web Service服务注册中心,同时也包含一组访问协议的实现标准,用于实现Web Service的注册和发现。UDDI以XML格式存储和管理Web Service的各种元信息,并以Web Service的形式提供基于元数据的服务发布和发现功能,使企业能将自身的Web Service进行注册,并让其他企业能够发现并访问这些Web Service。
UDDI提供了一个保存Web Service描述的机制。虽然UDDI通常会被认为是一种目录机制,但它也定义了一个用XML表示服务描述信息的数据结构标准。
5.Web Service通信模式
Web Service通信模式描述了如何调用Web Service及Web Service和SOAP的关系,并通过通信和编码方式定义了SOAP通信模式。SOAP协议支持两种类型的通信模式:RPC(Remote Procedure Call,远程过程调用)和Document(Document-Oriented,以文档为中心)。
(三)Web Service特点
Web Service建立在以XML为主的、开放的Web技术规范基础上,具有较好的开放性。其主要特征如下。
(1)跨平台性。Web Service能够跨平台集成应用。由于Web Service采用XML作为服务的描述和信息的封装,屏蔽了平台之间的差异性。
(2)完好的封装性。Web Service是一种部署在Web上的对象,具备对象的良好封装性,对服务请求者而言,仅能看到该对象提供的功能列表。
(3)松耦合性。Web Service是一种松耦合的对象。只要Web服务提供的接口功能不变,无论其实现如何变动,对调用者而言都是透明的。同时,由于Web Service提供即时连接的功能,在编写程序的时候,不需要预先知道被调用对象的组件的实例,使其应用更加松散。
(4)基于开放的标准。对于Web Service,其所有公共协约使用开放的标准协议进行描述、传输和交换,如XML技术、SOAP技术、UDDI技术等。这些协议具有完全免费的规范且基于开放标准技术,使组件的集成更为容易,解决方案的选择更为多样,移植也非常便利。
(5)高可复用性。Web Service应用程序由松散耦合的组件构成,易于与其他平台和其他的标准技术进行集成,具有高度的可复用性。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。