一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

架构Web Service:什么是Web服务?

时间:2008-01-12 编辑:简简单单 来源:一聚教程网

本文是架构Web服务的系列文章的第二篇,从Web服务的技术定义开始,来探讨什么是Web服务。首先,作者从技术角度详细分析了Web服务作为Internet环境下的软件组件的基本角色,从这个基本角色开始,详细介绍了这个组件对象的包装规范Web Service "stack",并对Web服务的应用做了分类,最后借助Garnter Group的材料考察了Web服务的当前发展状况。
在本系列的上一篇文章中,我就为什么需要Web服务,从商业利益需求的角度进行了分析。本文将结合技术驱动的发展需求,详细介绍从技术上来看,到底什么是Web服务,以及Web服务的应用分类。就技术角度而言,无论从哪个角度来看,Web服务都是对象/组件技术在Internet中的延伸。
本文所引用的资源主要包括两类,一类是Web服务的技术资源网站,包含了大量Web服务的技术信息,另一类是Web服务“stack"系列技术规范,他们是一个整体的技术体系,包括UDDI、SOAP、WSDL、XML等。本文的最后给出了这些资源的链接,有兴趣的读者可以通过这些资源链接找到所需的内容。
Web对象
从外部的使用者的角度而言,Web服务是一种部署在Web上的对象/组件,它具备以下特征:
完好的封装性,Web服务既然是一种部署在Web上的对象,自然具备对象的良好封装性,对于使用者而言,他能且仅能看到该对象提供的功能列表。
松散耦合,这一特征也是源于对象/组件技术,当一个Web服务的实现发生变更的时候,调用者是不会感到这一点的,对于调用者来说,只要Web服务的调用界面不变,Web服务的实现任何变更对他们来说都是透明的,甚至是当Web服务的实现平台从J2EE迁移到了.NET或者是相反的迁移流程,用户都可以对此一无所知。对于松散耦合而言,尤其是在Internet环境下的Web服务而言,需要有一种适合Internet环境的消息交换协议。而XML/SOAP正是目前最为适合的消息交换协议。
使用协约的规范性,这一特征从对象而来,但相比一般对象其界面规范更加规范化和易于机器理解。首先,作为Web服务,对象界面所提供的功能应当使用标准的描述语言来描述(比如WSDL);其次,由标准描述语言描述的服务界面应当是能够被发现的,因此这一描述文档需要被存储在私有的或公共的注册库里面。同时,使用标准描述语言描述的使用协约将不仅仅是服务界面,它将被延伸到Web服务的聚合、跨Web服务的事务、工作流等,而这些又都需要服务质量(QoS)的保障。其次,我们知道安全机制对于松散耦合的对象环境的重要性,因此我们需要对诸如授权认证、数据完整性(比如签名机制)、消息源认证以及事务的不可否认性等运用规范的方法来描述、传输和交换。最后,在所有层次的处理都应当是可管理的,因此需要对管理协约运用同样的机制。

热门栏目