[摘要] web服务的主要目标就是在现有的各种异构平台的基础上构筑一个通用的与平台无关语言无关的技术层,各种平台之上的应用依靠这个技术层来实施彼此的连接和集成。可以将电子商务web服务架构划分为概念层逻辑层和物理层三个层次的模型,并分别讨论了模型的具体内容。
[关键词] 电子商务 web服务 架构
一、引言
动态电子商务是电子商务(ebusiness,eb)发展的目标,而web服务是其核心技术,也是web的下一个革新。web服务将改变企业之间的商务运作和b2b应用的设计与开发。
web服务架构通常指用于架构web服务的整体技术框架,提供了运行于多种平台上的软件系统之间互操作的一种标准方法,其核心是互操作性。为了保证web服务之间的互操作,在整体技术框架中所需要的全局元素。web服务架构具有真正的平台无关性,能够将整个互联网作为一个资源体系加以利用,并具有互操作性强,即时集成,封装性强等许多相助的优点,这是传统的一些软件体系架构所不具备的。
二、web服务架构分析
web服务架构可以用不同的模型来进行描述和研究,如面向消息的模型(mom)、面向服务的模型(som)、面向资源的模型(rom)、策略的模型pm)等。
参照数据库系统模型的分析方法可以将web服务架构划分成概念层,逻辑层和物理层三个层次。概念层模型指出了参与web服务架构的各个实体间的关系及其基本活动,逻辑层模型描述了每一个web服务具有的标准协议栈,而物理层模型则涉及到web服务架构中各个协议的具体实现。WWw.133229.cOm
1.概念层模型
为了实现web服务架构所承诺的功能,任何web服务架构环境都少不了一下这些基本活动:(1)发布服务;(2)查找服务;(3)交互。这些活动主要涉及三种角色:服务提供者、服务请求者和发现代理。
服务提供者是服务的创建者和拥有者。它可以将服务发布到发现代理的网络服务库中以便于用户进行定位,也可以取消服务(当不再需要提供服务时或因为用户需求改变而需要进行服务升级时)。
服务请求者是需要调用网上的服务来完成自身服务的一方,它通过在发现代理中查找符合要求的服务,然后与服务提供者进行绑定和交互,已完成调用功能。服务请求者可以是通过台式机或无线设备上的浏览器访问服务的人,也可以是一个应用程序或web服务。
发现代理的主要工作就是管理网络服务库。服务库分类登记了各种wed服务的描述信息。服务提供者向发现代理发布服务,服务请求者根据服务描述信息来查找服务并与服务提供者进行绑定以进行交互操作。
2.逻辑层架构模型
在web服务环境中,任务是通过服务提供者、服务请求者和发现代理之间的相互合作来完成的。显然,要成功实现这种跨平台的交互,必须使用一整套标准的服务描述格式,通信格式以及数据交换格式,这就构成了web服务架构的协议栈,也就是其逻辑层模型。
(1)线(wire)级协议栈
线级协议栈主要负责处理wed服务环境中不同角色间实际的信息交换,它包括网络传输(transport)、消息包装(package)、消息扩展(extensions)三部分。
由于其通用性强,http是目前采用最多的传输层协议,但也可以采用其他网络传输协议如smtp,ftp等。
包装层负责包装实体间交换的信息,采用的主要协议是简单对象访问协议(simple object access protocol, soap)。soap是一个基于xml的,用于分布式环境下数据交换的简单、轻量级协议,它与编程语言、对象模型以及操作系统平台都无关。soap主要定义了请求和应答两种类型的消息,以允许服务请求者调用远程过程和服务提供者做出应答。
扩展层提供了可附加在web服务消息上的一些附加特性的表示框架,如上下文、路由、策略等,这些特性之间是正交的。
(2)描述(description)级协议栈
描述级协议栈是一个有xml schema定义的文档,它解决的是关于服务的描述问题,即一个web服务能做什么,它的位置在哪里以及如何调用它等。服务描述和soap消息机制一起,使得web服务真正实现了与底层的平台和语言无关,具备了优秀的跨平台和互操作性。通常可以将协议栈中的协议划分为描述单个web服务的协议和描述多个web服务之间互操作的协议。
(3)发现代理(discovery agencies)级协议栈
发现代理级协议栈包括以下三个层次的协议:
①查阅层(inspection)。它提供了一种分散化的服务发现方法,如wsil规范就定义了一种包含某领域内wsdl的url列表和其他wsil文档的url列表的文档格式,wsil文档还可以包含uddi库的引用以及许多其他引用。这些文档使得对web服务的查找更容易。
②发布(publication)。web服务必须发布以后才能被服务请求者查找和调用。web服务产生以后,发布到哪里以及如何进行发布就是发布层所解决的问题。根据应用对web服务的动态性强弱的要求,可以采用不同发布机制,如直接发布,利用wsil机制发布或者利用uddi库发布。
③发现(discovery)。发现协议处理服务的发现和查找问题。在设计阶段,服务请求者根据服务的接口描述来查找服务;在运行阶段,服务请求者根据服务的通信方式和服务质量来查找服务。查询方式支持按接口类型(如wsdl模板)查询、按绑定方式(如协议)查询、按特性(如qos参数)查询、按指定消息中间节点类型查询、按服务分类查询及按商业信息查询等。
3.物理层构架模型
逻辑层构架模型给出了一个web服务构架的逻辑构架。其具体实现可以有多种方式,构成了web服务的物理层构架模型。比如说对每一层协议功能,其具体采用的协议可能会有多种,并且不断会有新的特性开发出来。
三、结束语
web服务提供了一种在分布式网络环境下便利地进行应用程序集成和应用之间交互的方法,将改变传统的软件开发方式并将对企业间电子商务的发展产生巨大的推进作用。
参考文献:
[1]陈博许满武:基于web的计算模型—web service[j].计算机应用研究,2003,20
[2]岳昆王晓玲周傲英:web服务核心支撑技术:研究综述[j].软件学报,2004,15