webservice

一、分布式开发

      在传统的Client/Server结构中,应用程序逻辑通常分布在客户端和服务器两端,客户端发出请求,服务器端将结果返回客户端。Client/Server结构的缺陷是,当客户端数目激增时,服务器的性能将会因为无法进行负载平衡而大大下降。而一旦应用的需求发生变化,客户端和服务器端的应用程序则都需要修改,这样给应用的维护和升级带来了极大的不便,而且大量数据的传输也增加了网络的负载。为了解决Client/Server存在的问题,企业只有向多层分布式应用转变。
      分布式应用开发简单的说,是指将用户界面、控制服务、数据库管理三个层次部署在不同的位置上。其中用户界面是客户端实现的功能,控制服务是一个专门的服务器,数据管理是在一个专门的数据库服务器上实现的。
      一个分布式系统,就好比现实生活中的一个公司。其中,某些职员负责日常的内部事务保证公司正常运作;某些职员负责对外联系工作,保持与其他公司的关系;在公司员工之间定义了一定的工作流程,通过固定格式的表单提交任务及交换信息。在公司运作中,只要员工的职责及工作流程保持不变,其他的可变因数,如:工作的物理位置或交换信息的不同,都不会造成本质的变化。
      因此,在分布式系统中,不同职责的对象是可分布的。对象之间通过某种信息关联。


二、分布式架构思想-SOA
      SOA(Service-oriented architecture)面向服务架构。是构造分布式系统的应用程序的思想。一个应用程序的业务逻辑或功能被设计成服务呈现给客户端。开发人员可以通过组合一个或多个服务来构建应用,而无须理解服务的底层实现。举例来说,一个服务可以用.NET或J2EE来实现,而使用该服务的应用程序可以在不同的平台之上,使用的语言也可以不同。
      不同种类的操作系统,应用软件,系统软件相互交织,这便是IT企业的现状。IT初期开发的很多应用程序作为基础环境一致沿用到现在,被用来处理业务流程,而对于日益更新的IT环境,如果从头建立一个新的基础环境是不可能的。SOA凭借其松耦合的特性,使得企业可以按照模块化的方式来添加新服务或更新现有服务,以解决新的业务需要,提供选择从而可以通过不同的渠道提供服务,并可以把企业现有的或已有的应用作为服务, 从而保护了现有的IT基础建设投资。

三、分布式传输协议-SOAP

      SOAP(Simple Object Access Protocol )简单对象访问协议。是一个用于分布式环境的、轻量级的、基于XML进行信息交换的通信协议。

      SOAP=RPC+HTTP+XML:采用HTTP作为底层通讯协议;RPC作为一致性的调用途径,XML作为数据传送的格式,允许服务提供者和服务客户在internet进行通讯交互,可以允许任何类型的对象或代码,在任何平台上,以任何一种语言相互通信。

      RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。在 RPC 中,发出请求的程序是客户程序,而提供服务的程序是服务器。

 ***** 一个RPC流程  ******

 * RPC采用客户机/服务器模式。

 * 请求程序就是一个客户机,而服务提供程序就是一个服务器。

 * 首先,调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。

 * 在服务器端,进程保持睡眠状态直到调用信息的到达为止。

 * 当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息。

 * 最后,客户端调用过程接收答复信息,获得进程结果,然后调用执行继续进行。


四、分布式应用平台-WebService

      Web Service主要是为了使原来各自孤立的站点之间的信息能够相互通信、共享而提出的一种接口。 Web Service所使用的是Internet上统一、开放的标准,如HTTP、XML、SOAP、WSDL等,所以Web Service可以在任何支持这些标准的环境(Windows,Linux)中使用。

      WebService用来发布服务端 Java类的方法,以便使用不同的客户端进行调用。这样可以有效地集成多种不同的技术来完成应用系统。

      SOAP是Web Service的基本通信协议。

      webService和SOA关系:“Web服务是技术规范,而SOA是设计原则。特别是Web服务中的WSDL,是一个SOA配套的接口定义标准:这是Web服务和SOA的根本联系。”从本质上来说,SOA是一种架构模式,而Web服务是利用一组标准实现的服务。Web服务是实现SOA的方式之一。用Web服务来实现SOA的好处是你可以实现一个中立平台,来获得服务,而且随着越来越多的软件商支持越来越多的Web服务规范,你会取得更好的通用性。


五、webService描述语言-WSDL

      WSDL(Web Services Description Language)。Web Service描述语言,用于描述Web Service的服务,接口绑定等。

      当你发布了一个webService服务,如何向别人介绍你的Web service有什么功能,以及每个方法调用时的参数呢?你可能会自己写一套文档,你甚至可能会口头上告诉需要使用你的Web service的人。这些非正式的方法至少都有一个严重的问题:当程序员坐到电脑前,想要使用你的Web service的时候,他们的工具无法给他们提供任何帮助,因为这些工具根本就不了解你的Web service。解决方法是:用机器能阅读的方式提供一个正式的描述文档。Web service描述语言(WSDL)就是这样一个基于XML的语言,用于描述Web service及其函数、参数和返回值。


 

你可能感兴趣的:(应用服务器,Web,webservice,企业应用,SOA)