一、什么是Web Service
Web Service是指由企业发布的完成其特别商务需求的在线应用服务,其他公司、合作伙伴的应用软件能够通过Internet来动态访问并使用这些在线服务。它为未来全球的电子商务发展提供了新的标准和架构。
二、Web Service的运行模式
Web Service是独立的、模块化的应用,能够通过因特网来描述、发布、定位以及调用。在Web Service的体系架构中包括三个角色:服务提供者(Service Provider)、服务请求者(Service Requestor)、服务注册器(Service Registry)。角色间主要有三个操作:发布(Publish)、查找(Find)、绑定(Bind)。如下图:
一、什么是Web Service
Web Service是指由企业发布的完成其特别商务需求的在线应用服务,其他公司、合作伙伴的应用软件能够通过Internet来动态访问并使用这些在线服务。它为未来全球的电子商务发展提供了新的标准和架构。
二、Web Service的运行模式
Web Service是独立的、模块化的应用,能够通过因特网来描述、发布、定位以及调用。在Web Service的体系架构中包括三个角色:服务提供者(Service Provider)、服务请求者(Service Requestor)、服务注册器(Service Registry)。角色间主要有三个操作:发布(Publish)、查找(Find)、绑定(Bind)。如下图:
WebService中涉及两个部分:服务本身和对服务的描述。典型的应用过程是:服务提供者开发一个通过网络可以被访问的服务,然后将服务的描述注册到服务注册器或者发送给服务请求者;服务请求者通过查找动作在本地或服务注册器中检索服务描述,找到后,通过绑定就可以使用该项服务。
三、Web Service的整体架构
上图是从分层的角度来描述Web Service的整体架构。和网络的分层结构相同,上一层需要下一层的支持。而安全性、可管理性、服务质量则需要在各个层次都有所体现。Web Service设计到一些新的规范,如:UDDI(统一描述、发现和集成)、WSDL(Web Service描述语言)、WSFL(Web Service Flow Language)、SOAP(简单对象访问协议)等。通过这样一个层次分明的架构,Web Service希望达到一个目标,就是:实现动态的应用集成,将电子商务推向智能、和更加实用的阶段。
四、Web Service的特点
Web Service 是下一代分布式系统的核心,它具有如下特点:
完好的封装性: Web服务既然是一种部署在Web上的对象,自然具备对象的良好封装性,对于使用者而言,他仅能看到该服务的描述。
1.松散耦合:
这一特征也是源于对象/组件技术,当一个Web服务的实现发生变更的时候,调用者是不会感到这一点的,对于调用者来说,只要Web服务的调用接口不变,Web服务的实现任何变更对他们来说都是透明的,甚至是当Web服务的实现平台从J2EE迁移到了。NET或者是相反的迁移流程,用户都可以对此一无所知。对于松散耦合而言,尤其是在Internet环境下的Web服务而言,需要有一种适合Internet环境的消息交换协议。而XML/SOAP正是目前最为适合的消息交换协议。
2.使用协约的规范性:
这一特征从对象而来,但相比一般对象其界面规范更加规范化和易于机器理解。首先,作为Web服务,对象界面所提供的功能应当使用标准的描述语言来描述(比如WSDL);其次,由标准描述语言描述的服务界面应当是能够被发现的,因此这一描述文档需要被存储在私有的或公共的注册库里面。同时,使用标准描述语言描述的使用协约将不仅仅是服务界面,它将被延伸到Web服务的聚合、跨Web服务的事务、工作流等,而这些又都需要服务质量(QoS)的保障。其次,我们知道安全机制对于松散耦合的对象环境的重要性,因此我们需要对诸如授权认证、数据完整性(比如签名机制)、消息源认证以及事务的不可否认性等运用规范的方法来描述、传输和交换。最后,在所有层次的处理都应当是可管理的,因此需要对管理协约运用同样的机制。
3.使用标准协议规范:
作为Web服务,其所有公共的协约完全需要使用开放的标准协议进行描述、传输和交换。这些标准协议具有完全免费的规范,以便由任意方进行实现。一般而言,绝大多数规范将最终有W3C或OASIS作为最终版本的发布方和维护方。
4.高度可集成能力:
由于Web服务采取简单的、易理解的标准Web协议作为组件界面描述和协同描述规范,完全屏蔽了不同软件平台的差异,无论是CORBA、DCOM还是EJB都可以通过这一种标准的协议进行互操作,实现了在当前环境下最高的可集成性。
5.开放性:
Web Service可以与其他Web Service进行交互。它具有语言和平台无关性。支持CORBA、EJB、DCOM 等多种组件标准。支持各种通讯媒体如:HTTP、SMTP、MQ、FTP、RMI over IIOP等。