Web服务体系结构的基础是三种角色:服务供应者、服务注册库(服务中介)与服务需求者。三者之间存在的三种交互操作:发布、查找和绑定。服务角色和操作共同作用于Web服务内涵:Web服务软件模块和服务描述。在典型的情况下,服务供应者拥有网络可访问的软件模块(即Web服务的实现),并定义为一项Web服务的服务描述,然后向服务的需求者或服务注册库(服务中介)发布。服务请求者通过查找操作从本地或者服务注册库(服务代理)获取服务描述,并使用服务描述与服务供应者绑定,调用或交互执行Web服务的实现[160]。Web服务模型如图2-9所示。
图2-9 Web服务模型[160]
1.Web服务的组成
①服务供应者:从商业角度,是服务的所有者;从体系结构角度,是拥有服务访问权的宿主平台。从技术角度,主要功能是提供服务,并维护注册表以使服务可用。
②服务请求者:从商业角度看,是需要某些功能满足某种需求的应用。从体系结构角度,是查找并调用或初始化某项服务交互的应用。服务请求者的角色可以是人们使用的浏览器或者没有用户界面的一个程序(如另一个Web服务)。从技术角度,主要功能是通过服务中介发现Web服务,然后调用这些服务创建应用。
③服务注册库:是可搜索的服务供应者发布的服务描述的注册库。服务请求找到服务并获得服务描述中的绑定信息,包括服务开发过程中的静态绑定或服务执行过程中的动态绑定。服务注册库实际上是服务的注册交换中心,扮演着服务供应者和服务请求者之间中介角色。
2.Web服务的交互操作
一个应用在使用Web服务时,单次或重复发生三类基本操作:(www.xing528.com)
①发布操作:服务只有在发布了服务描述之后,才能被服务请求者发现和调用。服务发布到哪里取决于应用需求。
②查找操作:服务请求者直接或查询服务注册库获得所需服务的描述。查找操作在服务请求者的两个不同的时间段是不同的。在设计阶段为程序开发获取服务的接口描述,在运行阶段为服务调用获取绑定和定位信息。
③绑定操作:在绑定操作中,服务请求者在运行阶段使用服务描述中的绑定细节来定位、访问和调用目标服务,以调用或初始化一次服务交互。
3.Web服务的内涵
①服务:Web服务是由服务描述定义的接口。服务是部署在服务供应商所提供的网络可访问的平台上的软件模块,是Web服务的具体实现。服务是为被调用或与服务请求者交互而存在的,同时可作为服务请求者在其实现中使用其他的服务。
②服务描述:说明服务接口和实现的细节,包括数据类型、操作、绑定信息和网络位置,也可以包括分类和其他元数据以方便服务请求者发现和使用服务。服务描述可以发布到服务请求者或服务注册者。
4.Web服务的基本技术标准
Web服务的三个基本操作包含了三个标准技术:发布操作使用“通用描述、发现和集(UDDI);查找操作使用UDDI和Web服务描述语言(WSDL)的组合;绑定操作处理WSDL和简单对象访问协议(SOAP)。从最基础的层次上看,绑定操作是三者中最重要的。它包含服务的实际使用,这也是发生大多数互操作性问题的地方。简单地说,服务提供者和服务请求者对SOAP规范的全力支持解决了这些问题,并实现了无缝互操作性[5]。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。