Web Service是一种可以通过标准Internet协议访问的可编程的应用逻辑,可以在任何支持网络通信的操作系统中实施运行,它是一种新的Web应用程序分支,是自包含、自描述、模块化的应用,可以发布、定位、通过Web调用。Web Service将基于组件的开发理念和web进行了合并,逻辑性的为其他应用程序提供数据与服务,各应用程序通过网络协议和规定的一些标准数据格式(Http,XML,Soap)来访问Web Service,通过Web Service内部执行得到所需结果,Web Service可以执行从简单的请求到复杂商务处理的任何功能。之所以说以组件为基础的理念,是因为Web Service对于用户而言只是一个黑盒,它可以被重用而不用考虑Web Service内部是怎样实现的,但与现今组件技术的区别是,Web Service不是通过对象模型相关的协议(例如:DCOM和RMI)进行访问的,它是通过普遍的web协议(例如:HTTP)和数据格式(例如:XML)进行访问的。
当前,在企业MES系统中,Web Services是企业构建SOA系统的重要组成部分,应用的好,可以帮助企业节约成本,提高生产效率。
Web Service的思想
Web Service是一种可以通过Internet提供和调用的服务:
1.通过标准的接口描述;
2.使用标准的web协议。
Web Service中的四个关键组件
一个Web Service程序是在四个关键组件上建立的,它们的名字分别为:XML、SOAP、WSDL和UDDI。它们是Web Service核心。
Web应用体系经历了三个发展阶段。第一代Web应用体系结构模式是C/S模式,随着网络处理需求不断膨胀以及灵活性及适应性问题的出现,促使产生了第二代Web应用体系结构模式,即Web Appheation Server模式。近年来,由于使用标准的HTTP和XML格式的规范化通讯技术以及面向服务计算(Serviec Oriented Computing,SOC)技术的发展,出现了第三代Web应用体系,即“Web Services平台体系”。Web Service的主要目标是跨平台的可互操作性。为了达到这一目标,Web Service完全基于XML(可扩展标记语言)、XSD(XML Schema)等独立于平台、独立于软件供应商的标准,是创建可互操作的、分布式应用程序的新平台。Web Services体系以SOC为基础,并以SOAP.XML,WSDL和UDDI分别作为其数据传输协议、消息传送格式、服务描述语言以及服务注册机构。
SOAP:SOAP(Simple Object Access Protocol)协议,是一组基于XML的无状态、单向、轻量级的消息传递协议,用于无中心、分布式远程过程的调用。它是Web Services的通信协议,SOAP的部分规范,用来定义消息的XML格式,包含在一对SOAP元素中的、结构正确的XML段以即SOAP消息。目前常使用HTTP传输XML数据。
WSDL:WSDL(Web Serviee Description Language)协议,是把Web Services抽象地用XML描述为一组包含在面向文档或面向过程信息的消息上执行操作的端点的集合。它是Web服务说明语言。我们可以认为WSDL文件是一个XML文档,Web Services的细节描述都包含在里面,如参数类型、函数功能、返回类型、终端和绑定协议等,客户端可以通过查看WSDL来确定所需的接口函数。
UDDI:UDDI(Universal Description,Discovery and Integration)协议,是一个基于SOAP协议的,为Web Services提供信息注册中心的实现标准,同时也包含一组提供Web Services注册、发现和调用的访问协议。Web Services提供者先在UDDI注册中心集中注册,那么需求者可到UDDI注册中心查询所需的Web Services服务,它起到联系纽带的作用。
Web Services提供者编写接口函数与服务描述,并把它发布到服务请求者或服务注册中心。需求者通过Internet进行访问查询服务描述,选择所需的服务进行绑定并调用Web Services函数,Web Services提供者则以XML的形式把结果返回给服务请求者,从而实现信息交互。
利用Web Service架构可实现企业内部及企业外部合作伙伴之间的信息沟通和异构系统间信息交换,即企业可以运用Web Service来整合生产流程。生产流程分成内部生产流程和企业间的商业流程,结合Web Service架构中的三个角色,在企业内部生产流程上,企业将同时扮演服务请求者及服务提供者这两个角色,而且企业需在内部建构一个服务中介者来存放自己的Web Services。在企业间的商业流程上,两个企业进行交易时,一个担任服务请求者的角色,另一个扮演服务提供者的角色,并且有第三者担任服务中介者的角色以提供企业来查询所需的服务。
Web Services的优点
Web Services使得运行在不同平台/操作系统的应用程序可以进行协同工作;
Web Services使用开放的标准和协议。协议和数据格式是文本格式的,使得开发人员很容易读懂;
Web Services使用HTTP协议,它可以在不改变防火墙的过滤原则的前提下通过防火墙,而相同情形对于RPC则很可能会被限制;
Web Services允许不同地点的不同公司的软件和服务之间进行集成服务;
Web Services允许服务和基础组件的重用。
Web Services是松耦合的,因此是种很适合建立分布式应用程序的方法。
Web Services的缺点
相比一些成熟的分布式计算开放标准(例如:CORBA),Web Services的标准特性,例如事务处理,现今还不存在或者还在研究中。
相比别的分布式方法,例如:RMI,CORBA或者DCOM,Web Services可能在性能上比较劣势。这是选择了文本基础的格式导致的普遍后果。
发表于:
2012-03-29 17:54 阅读(229)
评论(0) 收藏 好文推荐