Webservice简单介绍(一)

来源:互联网 发布:矩阵的运算法则 编辑:程序博客网 时间:2024/06/04 18:49

 

一、概念:WebServices与传统的分布式计算技术

为了使分布式系统正确地工作,运行于网络中各台计算机上的应用程序组件必须能够互相通信。20世纪90年代初,包括OMG(对象管理组织)MicrosoftSunIBM在内的许多公司和组织都意识到了这一点,并开始发展它们自己的技术以实现分布式组件之间的通信。OMG的公共对象请求代理体系结构(CORBA)Microsoft的分布式组件对象模型(DCOM)Sun公司的远程方法调用(RMD)以及IBM的分布式系统对象模型(DSOM)都能允许运行于不同地点的程序之间进行通信,就像在同一台计算机上一样。这是一项重大进步,因为企业可以使用这些技术把应用程序与其商业伙伴的计算机系统集成起来。

  但是,这些技术之间分布式计算对于促进商业过程集成和自动化的能力。

  于是Web服务应运而生,Web服务通过扩展了有限的客户操作性而改进了分布式计算的能力。与DCOMCORBA不同,Web服务使用了开放的(即非专有的)标准。这意味着Web服务理论上可以是任何两个软件组件进行通信(即使创建组件的技术或组件所基于的平台有所不同)

  而且,基于Web服务的应用程序比较容易调试,因为Web服务使用的是基于文本的通信协议,而不是DCOMCORBA采用的二进制通信协议。目前,很多组织已实施Web服务以改进DCOM组件和CORBA组件之问的通信,并创建基于标准的分布式计算系统。

的可互操作性(与不同供应商、不同平台的软件之间通信和共享数据的能力)是非常有限的。例如:DCOMCORBA这两个最通用的技术之间却不能简单地通信。DCOMCORBA组件之间通常要通过COM/CORBA桥来通信。如果DCOMCORBA的底层协议发生改变的话,程序员就必须修改桥以反映这种变化。这些问题削弱了

 

二、概念:WebServices与传统的分布式计算技术

Web服务(Web Services)是一段位于Internet上的业务逻辑。可以通过基于标准的Internet协议(HTTPSMTP)访问。Web服务技术掀起了IT业的浪潮,无论是平台供应商、解决方案供应商,还是服务提供商都纷纷在自己的平台、解决方案以及服务中加入了Web Services。以MicrosoftIBMOracleHPBEASAP等为首的计算机业巨头们无一例外地将自己的软件产品/解决方案全面支持WebServices。他们共同成立了WS-I(Web ServicesInteroperability Organization),致力于推广Web services的全面应用。

  Web服务技术的目标是实现一种更高层次的分布式计算环境,在这个环境中,业务逻辑能够以与平台和语言无关的方式进行无缝交互。

Web服务的出现为实现这种以人为本的业务端编程思想提供了更便利的条件。Web服务作为一种基于开放标准的新型分布式应用构件,一方面为构造松耦合应用提供了支持,另一方面由于服务在满足用户需求的能力方面具有优势,使得用户直接参与软件构造只需组合服务而不必重写代码。

 

三、应用场合:

1) 跨越防火墙的通信

 

  客户端和服务器端之间通信都会有防火墙或者代理服务器。传统的实现互相通信的方法是在分布式对象,如DCOMCORBA之间进行相互的远程过程调用(TCP/IP),但在这种场合下HTTP协议的特性没有得到应用,因此在Internet环境下的远程过程调用不是一件容易的事情,同时在Internet上使用远程过程调用还存在安全问题,防火墙和代理服务器还有可能阻挡这种类型的数据传输。HTTP是在Internet上发送消息的标准协议。Web服务使用基于XML消息处理作为基本的数据通信方式,应用程序可以使用HTTPXML消息等标准在基于Web的应用程序之间交换信息,从而跨越防火墙。

 

  2) 应用程序集成

 

企业里经常要把不同语言写成的在不同平台上运行的各种程序集成起来。大型公司常常有很多部门,每个部门都使用最适合自己特定需要的应用程序和平台。为了能够让公司各部门之间进行通信,首先应该将公司内部的应用程序和商业过程集成在一起。Web服务的开放标准使组织创建可重用的应用程序接口。当被包装成一个或一组Web服务之后,任何应用程序理论上都可以通过SOAP消息与任何其他应用程序进行通信。

 

3) B2B的集成

  跨公司的商务交易集成通常叫做B2B集成。各企业可以采用Web服务与其他企业进行通信。通过Web服务能够将数据及应用程序的集成扩展到公司的防火墙之外,使公司能够与其伙伴、供应商、发行商和客户共享数据和商业过程,从而加强企业之间的合作关系。

 

  4) 软件复用

  软件复用是在软件开发中避免重复劳动的解决方案。Web服务实现了业务级别的软件复用,例如在B2B的集成中,各企业之间通过互相调用Web服务,实现了Web服务的共享,Web服务的使用企业不需要再重新开发其他企业中已经存在的服务。

 

总结:

1)广域网上应用;

2)跟操作系统平台无关,跨平台;

3)跟开发语言无关,跨语言;

4)解决数据孤岛,使多个系统可以互联互通,共享数据,保证数据的唯一性和正确性;

5)共享复杂的商业逻辑;

0 0
原创粉丝点击