Web+Services.ppt_第1页
Web+Services.ppt_第2页
Web+Services.ppt_第3页
Web+Services.ppt_第4页
Web+Services.ppt_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2-1华华Web Service 概论概论本文由三七阅读本文由三七阅读http:/编辑上编辑上传传苍穹龙骑 http:/2-2华华Web Service 概论主要内容概论主要内容1.1 Web Service 发展背景发展背景1.7 *面向服务开发的体系结构面向服务开发的体系结构1.2 Web Service 概念和发展概念和发展1.6 Web Service 产品支持和比较产品支持和比较1.3 Web Service 技术体系技术体系1.4 Web Service 技术特点技术特点1.5 Web Service 使用使用2-3华华 当今电子商务当今电子商务/ /政务从政务从. .COMCOM

2、的模式全面转向企业电子商的模式全面转向企业电子商务化进程,企业和系统架构师更多关注该电子商务应用务化进程,企业和系统架构师更多关注该电子商务应用为企业带来直接的经济收益、削减掉某方面的开支成本、为企业带来直接的经济收益、削减掉某方面的开支成本、优化资源使用。优化资源使用。1.1 Web Service 发展背景发展背景 出现企业门户出现企业门户( (Portal)Portal)、网上连锁商店、网上连锁商店( (Storefront)Storefront),集团内联网集团内联网( (Intranet)Intranet)与知识库与知识库( (Knowledge Base)Knowledge Bas

3、e)、供应链供应链( (Supply Chain)Supply Chain)管理、客户服务管理、客户服务(Customer Service)管理、分销管理、分销( (Distribution)Distribution)管理、管理、提供提供ASP(Application Service Provider)服务等电子商务系统。服务等电子商务系统。 2-4华华电子商务发展面临问题电子商务发展面临问题MirroringVirtualizationSnapshotsSAN经常经常经常增加新的电子商务应用经常增加新的电子商务应用 TapeFibre ChannelGigabit EthernetBacku

4、pArchiving更大范围业务协同更大范围业务协同经常会对电子商务的流经常会对电子商务的流程进行更改程进行更改2-5华华电子商务发展面临问题电子商务发展面临问题还面临另一个问题,就是与其他程序的互操作性。还面临另一个问题,就是与其他程序的互操作性。事实上大多数商业数据仍然在大型主机上以非关系事实上大多数商业数据仍然在大型主机上以非关系文件文件(VSAM)的形式存放,并由的形式存放,并由COBOL语言编写语言编写的大型机程序访问。而且,目前还有很多商用程序的大型机程序访问。而且,目前还有很多商用程序继续在使用继续在使用C+、Java、Visual Basic和其他各和其他各种各样的语言编写。种

5、各样的语言编写。现在所有应用程序需要与运行在异构平台上的应用现在所有应用程序需要与运行在异构平台上的应用程序集成,并进行数据交换。如文件传输和分析、程序集成,并进行数据交换。如文件传输和分析、消息队列,还有仅适用于某些情况的的消息队列,还有仅适用于某些情况的的API。需要。需要寻找一个独立于平台、组建模型和编程语言的寻找一个独立于平台、组建模型和编程语言的应用应用程序交互标准程序交互标准。2-6华华采用复杂系统连接的传统解决方案采用复杂系统连接的传统解决方案 一般都是采用一般都是采用“独立解决方案独立解决方案”。即为每个需要的企业资。即为每个需要的企业资源或外部资源编写连接代码,以使应用运行。

6、这些资源包源或外部资源编写连接代码,以使应用运行。这些资源包括:传统系统括:传统系统( (legacy systems)legacy systems)和数据库、和数据库、WebWeb应用及应用及WebWeb资源,以及正在不断涌现的资源,以及正在不断涌现的WebWeb服务。服务。 由于每个应用都有其自己特有的基础架构,其创建、维护由于每个应用都有其自己特有的基础架构,其创建、维护和定制的代价及复杂度就已惊人。何况要涉及多个这样的和定制的代价及复杂度就已惊人。何况要涉及多个这样的应用,其代价之高是可象而知的。应用,其代价之高是可象而知的。 为应用部署、更改和维护。不得不为每套应用配置特有技为应用部

7、署、更改和维护。不得不为每套应用配置特有技术人员,并保持与不同技术供应商或解决方案供应商的密术人员,并保持与不同技术供应商或解决方案供应商的密切联系。同时这些应用既不能被方便地继承,也不能随着切联系。同时这些应用既不能被方便地继承,也不能随着企业商务的规模扩展而方便地实现应用的规模扩展。企业商务的规模扩展而方便地实现应用的规模扩展。2-7华华 早先出现的电子商务技术,比如早先出现的电子商务技术,比如EDI、web EDI (也许是基也许是基于于XML的的)、内容服务器、应用服务器(中间件)、内容服务器、应用服务器(中间件)、EAI(Enterprise Application Integrat

8、ion),以及那些为创建,以及那些为创建企业门户以及其他单个电子商务应用而设计的独立解决方企业门户以及其他单个电子商务应用而设计的独立解决方案都无法解决这个问题。案都无法解决这个问题。 它们之所以无能为力,是因为它们不无例外地都是基于复它们之所以无能为力,是因为它们不无例外地都是基于复杂应用连接的、不具备良好集成能力的应用开发模式,它杂应用连接的、不具备良好集成能力的应用开发模式,它们都是通过程序代码实现复杂应用连接以连接用户、电子们都是通过程序代码实现复杂应用连接以连接用户、电子商务应用以及其他信息系统的。这样的实现方式既无法有商务应用以及其他信息系统的。这样的实现方式既无法有效地解决经常发

9、生的电子商务流程的更改而触发的大额费效地解决经常发生的电子商务流程的更改而触发的大额费用,也无法有效地解决各类用户的定制需求。用,也无法有效地解决各类用户的定制需求。必须寻求新的技术途径必须寻求新的技术途径 2-8华华 最近,许多商务过程集成设计都主要依赖于同步的技术,最近,许多商务过程集成设计都主要依赖于同步的技术,如如Common Object Request Broker ArchitectureCommon Object Request Broker Architecture(CORBACORBA)和和MicrosoftMicrosoft的组件对象模型(的组件对象模型(COMCOM)。

10、然而,一个商务过)。然而,一个商务过程中许多事件实际上都是异步的并依赖基于对话的模型,程中许多事件实际上都是异步的并依赖基于对话的模型,协调协调就需要能够在非实时环境中(异步地)处理请求和响就需要能够在非实时环境中(异步地)处理请求和响应。应。 成功成功协调协调关键就是那些使开发人员可以管理关键就是那些使开发人员可以管理“对话对话”(工(工作流程发生的顺序)的技术和开发工具。所以,任何作流程发生的顺序)的技术和开发工具。所以,任何orchestrationorchestration系统的一个重要功能就是能够在分布式系系统的一个重要功能就是能够在分布式系统中处理消息序列,不会失败。这就需要公布的

11、、可靠的统中处理消息序列,不会失败。这就需要公布的、可靠的消息,以及消息,以及协调协调技术,就是协调与暴露在可靠的消息中枢技术,就是协调与暴露在可靠的消息中枢的松散藕合服务的对话。的松散藕合服务的对话。 必须寻求新的技术途径必须寻求新的技术途径 2-9华华 突破性技术的产生突破性技术的产生XML Web ServicesXML Web Services使编软件的方使编软件的方式和软件所能完成的功能正在发生重大的变化,这些式和软件所能完成的功能正在发生重大的变化,这些变化的核心就是通过变化的核心就是通过InernetInernet作媒体服务集成;计算机作媒体服务集成;计算机的处理能力从台式机传到

12、数据中心,通过的处理能力从台式机传到数据中心,通过InernetInernet把应把应用程序连接起来创造更大的价值。用程序连接起来创造更大的价值。Web ServicesWeb Services出现出现 计算机和软件一次又一次的使商业运作发生巨大的变计算机和软件一次又一次的使商业运作发生巨大的变化,从五十年代用于会计清算的大型机化,从五十年代用于会计清算的大型机,八十年代提八十年代提高个人办公能力的高个人办公能力的PCPC,现在我们正在体验的现在我们正在体验的World World Wide WebWide Web的兴起。在每一个阶段,新技术的引入总会的兴起。在每一个阶段,新技术的引入总会产生

13、新型的软件,这些软件反过来改变了商业的运行产生新型的软件,这些软件反过来改变了商业的运行模式,促进了整个经济的增长。模式,促进了整个经济的增长。2-10华华Web服务的当前发展状况服务的当前发展状况 (2001年)年) Y Y轴技术受关注度,轴技术受关注度,X X轴技轴技术应用成熟度。每一项技术在术应用成熟度。每一项技术在从出现到成熟的整个过程都将从出现到成熟的整个过程都将沿着图中的曲线前进,而且典沿着图中的曲线前进,而且典型地,都将被划分为五个阶段:型地,都将被划分为五个阶段:1 1、技术显现:技术发明或定、技术显现:技术发明或定义后进入公众视野;义后进入公众视野; 2 2、不断膨胀的期望期

14、:类似、不断膨胀的期望期:类似网络的泡沫器网络的泡沫器; 3 3、醒悟期:技术定位思考;、醒悟期:技术定位思考; 4 4、应用发展期:技术良性发、应用发展期:技术良性发展期展期 5 5、工业化生产期:该项技术、工业化生产期:该项技术成为业界主流,大量应用在具成为业界主流,大量应用在具体的环境中。体的环境中。 ITIT主流技术发展抽象模型主流技术发展抽象模型2-11华华 什么是什么是Web ServiceWeb Service呢?呢?1.2 Web Service 概念和发展概念和发展 从表面上看,从表面上看,Web ServiceWeb Service就是一个应用程序(服务器),就是一个应用程

15、序(服务器),它向外界暴露出一个能够通过它向外界暴露出一个能够通过WebWeb进行调用的进行调用的APIAPI。即能。即能够用编程方法通过够用编程方法通过WebWeb调用来实现的某个功能的应用程序。调用来实现的某个功能的应用程序。 从深层次上看,从深层次上看,Web ServiceWeb Service是一种新的是一种新的WebWeb应用程序分支,应用程序分支,它们是自包含、自描述、模块化的应用,可以在网络它们是自包含、自描述、模块化的应用,可以在网络( (通通常为常为Web)Web)中被描述、发布、查找以及通过中被描述、发布、查找以及通过WebWeb来调用。来调用。 Web service

16、更精确的解释:更精确的解释: Web services是建立可是建立可互操作的分布式应用程序的新平台互操作的分布式应用程序的新平台。2-12华华Web Service 概念描述(概念描述(1) Web Web服务(服务(web servicesweb services)主要是关于集成的,运用公)主要是关于集成的,运用公开的、基于标准的、松散藕合的开的、基于标准的、松散藕合的WebWeb服务技术提供一个服务技术提供一个不很昂贵的集成方法,它从根本上改变人们创建和使不很昂贵的集成方法,它从根本上改变人们创建和使用网络软件的方式。用网络软件的方式。 Web Service Web Service是基

17、于网络(是基于网络(Internet/ IntranetInternet/ Intranet)的、的、分布式分布式计算计算的模块化组件,它们完成特定功能,遵守的模块化组件,它们完成特定功能,遵守具体具体开放的开放的技术规范,使技术规范,使Web ServiceWeb Service能与其他兼容的能与其他兼容的组件进行互操作。组件进行互操作。2-13华华Web Service 概念描述(概念描述(2) Web ServiceWeb Service就技术角度而言,是对象就技术角度而言,是对象/组件技术在组件技术在Internet中的延伸。从外部的使用者的角度而言,中的延伸。从外部的使用者的角度而言

18、,Web服务是一种部署在服务是一种部署在Web上的对象上的对象/组件组件。 Web Service Web Service就象就象InternetInternet上的组件服务,无论使用何上的组件服务,无论使用何种系统平台、何种程序語言编写的应用程序,我們可以种系统平台、何种程序語言编写的应用程序,我們可以通過通過Web serviceWeb service标准对这些服务进行查询,都可以将标准对这些服务进行查询,都可以将它們整合到自己的应用系统之中。它們整合到自己的应用系统之中。2-14华华 Web服务解决方案服务解决方案 要摆脱独立解决方案的实现模式,舍弃复杂系统连接的要摆脱独立解决方案的实现

19、模式,舍弃复杂系统连接的实现方法。传统的由程序员主导的由里向外的开发模式实现方法。传统的由程序员主导的由里向外的开发模式应当被由应当被由用户主导的由外向里的开发模式用户主导的由外向里的开发模式取代。冗长的取代。冗长的串行的开发循环应当被串行的开发循环应当被即时的,快速的应用装配即时的,快速的应用装配所取代。所取代。同时这样的应用具备高可定制性。同时这样的应用具备高可定制性。 基于基于XMLXML技术的技术的WebWeb服务正是解决这一问题的有效手段。服务正是解决这一问题的有效手段。WebWeb服务的使用改变传统开发模式和应用部署费用规模。服务的使用改变传统开发模式和应用部署费用规模。各种各种W

20、ebWeb服务分别实现了一定的电子商务功能,通过将各服务分别实现了一定的电子商务功能,通过将各种电子商务的种电子商务的WebWeb服务进行组合和集成以创建动态电子商服务进行组合和集成以创建动态电子商务应用。务应用。WebWeb服务能够统一地封装信息、行为、数据表现服务能够统一地封装信息、行为、数据表现以及商务流程,而无需考虑应用所在的环境是使用何种以及商务流程,而无需考虑应用所在的环境是使用何种系统和设备。系统和设备。2-15华华商务商务Web的形成的形成 通过使用通过使用WebWeb服务,企业能够以前所不可能的方式通过抽服务,企业能够以前所不可能的方式通过抽象和混合将自身的电子商务组件化。当

21、一个企业的核心象和混合将自身的电子商务组件化。当一个企业的核心竞争力被组件化之后,那么这些核心竞争力就能够很方竞争力被组件化之后,那么这些核心竞争力就能够很方便地在不同的企业之间共享,同时架构跨企业的电子商便地在不同的企业之间共享,同时架构跨企业的电子商务应用,形成商务务应用,形成商务WebWeb 在商务在商务Web中,中, Web服务是被一次部署到服务是被一次部署到Internet中,然中,然后到处可用的新型组件,就可以使用和集成后到处可用的新型组件,就可以使用和集成Web服务。服务。采用采用Web服务,显著降低开发、部署和集成代价,程序服务,显著降低开发、部署和集成代价,程序员无需与多种平

22、台交互,只需要与员无需与多种平台交互,只需要与Web服务组件进行交服务组件进行交互,同时互,同时Web服务的调用界面完全采用标准的服务的调用界面完全采用标准的XML及相及相关技术。流程的更改也无需更改大量代码,随关技术。流程的更改也无需更改大量代码,随Web服务服务大量使用,大量使用,Web服务在运行时进行动态装配将成为现实。服务在运行时进行动态装配将成为现实。 2-16华华1.3 Web Service 技术体系技术体系 一个完整的一个完整的WebWeb服务体系,在松散耦合环境下的对象服务体系,在松散耦合环境下的对象访问,以及在基本对象访问之上的诸如事务、工作流、访问,以及在基本对象访问之上

23、的诸如事务、工作流、安全机制等实现,需要有一系列的协议规范来支撑,安全机制等实现,需要有一系列的协议规范来支撑,Web ServiceWeb Service平台需要一套协议来实现分布式应用程平台需要一套协议来实现分布式应用程序的创建和管理。序的创建和管理。 换一句话说,任何平台都有它的数据表示方法和类型换一句话说,任何平台都有它的数据表示方法和类型系统。要实现互操作性,系统。要实现互操作性,Web ServiceWeb Service平台必须提供平台必须提供一套标准的类型系统,用于沟通不同平台、编程语言一套标准的类型系统,用于沟通不同平台、编程语言和组件模型中的不同类型系统。和组件模型中的不同

24、类型系统。2-17华华1 1、可扩展的标记语言可扩展的标记语言XMLXML和和XSDXSD 可扩展的标记语言可扩展的标记语言XMLXML是是Web ServiceWeb Service平台中表示平台中表示数据的基本格式。除了易于建立和易于分析外,数据的基本格式。除了易于建立和易于分析外,XMLXML主要的优点在于它既与平台无关,又与厂商无关。主要的优点在于它既与平台无关,又与厂商无关。XMLXML是由万维网协会是由万维网协会( (W3C)W3C)创建,创建,W3CW3C制定的制定的XSD(XML XSD(XML Schema Schema Definition)Definition)定义了一套

25、标准的数据类型,定义了一套标准的数据类型,并给出了一种语言来扩展这套数据类型。并给出了一种语言来扩展这套数据类型。 Web ServiceWeb Service平台用平台用XSDXSD作为数据类型系统。当你用某作为数据类型系统。当你用某种语言(如种语言(如VB.NETVB.NET或或C#C#)来构造一个)来构造一个Web ServiceWeb Service时,时,所有使用的数据类型都必须转换为所有使用的数据类型都必须转换为XSDXSD类型。如想让类型。如想让它使用在不同平台和不同软件的不同组织间传递交互,它使用在不同平台和不同软件的不同组织间传递交互,还需要用某种东西将它包装起来,就是一种协

26、议。还需要用某种东西将它包装起来,就是一种协议。2-18华华2 2、简单对象访问协议简单对象访问协议SOAP SOAP(Simple Object Access Protocol),是用于交换,是用于交换XML编码信息的轻量级协议。它有三个主要方面:编码信息的轻量级协议。它有三个主要方面:XML-envelope为描述信息内容和如何处理内容定义为描述信息内容和如何处理内容定义了框架;将程序对象编码成为了框架;将程序对象编码成为XML对象的规则;执对象的规则;执行远程过程调用行远程过程调用(RPC)的约定的约定。SOAP可以运行在任可以运行在任何其他传输协议上,如可以使用何其他传输协议上,如可以

27、使用 SMTP、HTTP协议协议传递传递SOAP消息,这是很有诱惑力的。消息,这是很有诱惑力的。 Web Service Web Service 希望在不同系统间能用希望在不同系统间能用“软件软件- -软件对软件对话话”的方式实现相互调用,打破软件应用、网站和各的方式实现相互调用,打破软件应用、网站和各种设备之间的格格不入,实现种设备之间的格格不入,实现“基于基于WebWeb无缝集成无缝集成”的目标。的目标。 Web service建好以后,你或者其他人就会去调用。建好以后,你或者其他人就会去调用。简单对象访问协议简单对象访问协议(SOAP)提供了标准的提供了标准的RPC方法来方法来调用调用W

28、eb service。 2-19华华3 3、Web Service描述语言描述语言WSDL Web serviceWeb service有什么功能,以及调用它时的参数呢?有什么功能,以及调用它时的参数呢?解决方法是:用机器能阅读的方式提供一个正式的解决方法是:用机器能阅读的方式提供一个正式的描述文档。一些最新的开发工具既能根据你的描述文档。一些最新的开发工具既能根据你的Web Web serviceservice生成生成WSDLWSDL文档,又能导入文档,又能导入WSDLWSDL文档,生成调文档,生成调用相应用相应Web serviceWeb service的代码。的代码。 WSDLWSDL是

29、用机器能阅读的方式提供的一个基于是用机器能阅读的方式提供的一个基于XMLXML的语的语言正式描述文档,用于描述言正式描述文档,用于描述Web ServiceWeb Service及其函数、及其函数、参数和返回值。因为是基于参数和返回值。因为是基于XMLXML的,所以的,所以WSDLWSDL既是机既是机器可阅读的,又是人可阅读的。器可阅读的,又是人可阅读的。2-20华华4 4、通用描述、发现和集成、通用描述、发现和集成UDDI UDDI (Universal Description,Discovery,and Universal Description,Discovery,and Integra

30、tion),Integration),目的是为电子商务建立标准;目的是为电子商务建立标准;UDDI是一套基于是一套基于Web的、分布式的、为的、分布式的、为Web Service提供提供的、信息注册中心的实现标准规范,同时也包含一的、信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的组使企业能将自身提供的Web Service注册,以使别注册,以使别的企业能够发现的访问协议的实现标准。的企业能够发现的访问协议的实现标准。2-21华华5 5、远程过程调用远程过程调用RPC与消息传递与消息传递 Web ServiceWeb Service本身其实是在实现应用程序间的通信。我本身其实是在

31、实现应用程序间的通信。我们现在有两种应用程序通信的方法:们现在有两种应用程序通信的方法:RPCRPC远程过程调用远程过程调用和消息传递。使用和消息传递。使用RPCRPC的时候,客户端的概念是调用的时候,客户端的概念是调用服务器上的远程过程,通常方式为实例化一个远程对服务器上的远程过程,通常方式为实例化一个远程对象并调用其方法和属性。象并调用其方法和属性。RPCRPC系统试图达到一种位置上系统试图达到一种位置上的透明性:服务器暴露出远程对象的接口,而客户端的透明性:服务器暴露出远程对象的接口,而客户端就好像在本地使用的这些对象的接口一样,这样就隐就好像在本地使用的这些对象的接口一样,这样就隐藏了

32、底层的信息,客户端也就根本不需要知道对象是藏了底层的信息,客户端也就根本不需要知道对象是在哪台机器上。在哪台机器上。 2-22华华6 6、Web Service层次和采用技术层次和采用技术 一个可以使用的一个可以使用的WebWeb服务应当按照需要选用若干层次的服务应当按照需要选用若干层次的功能,而无需所有的特性。比如在目前状况下,一个功能,而无需所有的特性。比如在目前状况下,一个简单应用可能只要使用简单应用可能只要使用WSDL/SOAPWSDL/SOAP就可以架构一个符合就可以架构一个符合规范的规范的WebWeb服务了。服务了。 所有的机制完全是基于现有的技术,并没有创造一个所有的机制完全是基

33、于现有的技术,并没有创造一个完全的新体系。无论是完全的新体系。无论是IPv4IPv4、HTTPHTTP、FTPFTP这些现有的网这些现有的网络协议,还是络协议,还是SOAPSOAP、WSDLWSDL等这些基于等这些基于XMLXML而定义的协议而定义的协议都是遵循着一个原则:继承原有的被广泛接受的技术,都是遵循着一个原则:继承原有的被广泛接受的技术,这样才能使得这样才能使得WebWeb服务被广泛接受。服务被广泛接受。 2-23华华 Web Service层次结构层次结构 基于基于XML的协的协议议 2-24华华 相对于现在软件,相对于现在软件,XML Web ServicesXML Web Se

34、rvices可使你开发可使你开发出能完成更加复杂功能的软件,你不仅可以使用出能完成更加复杂功能的软件,你不仅可以使用一个节点的处理能力,你也可以使用与之相连的一个节点的处理能力,你也可以使用与之相连的别的节点的及节点之间的处理能力。别的节点的及节点之间的处理能力。 Web Web ServicesServices开发复杂解决方案将是一件简单的事。开发复杂解决方案将是一件简单的事。XML Web ServicesXML Web Services这些标准的使用给软件业带来这些标准的使用给软件业带来的革命好比是制造业中从手工转向流水线。它快的革命好比是制造业中从手工转向流水线。它快捷、廉价、简单且更

35、加高效。捷、廉价、简单且更加高效。1.4 Web Service 特点特点复杂功能的软件系统集成:复杂功能的软件系统集成:2-25华华通过通过Web Service集成应用集成应用 2-26华华 Web Services除完成软件集成的特点外,突出除完成软件集成的特点外,突出之处之处数据集成能力。数据集成能力。 Web Services有机会访有机会访问最新的授权数据源,可使应用程序在更大范围问最新的授权数据源,可使应用程序在更大范围内使用和提供内使用和提供“更好的数据更好的数据”,也可以很简单地,也可以很简单地把它拿来同别的数据一起,在决策系统和分析工把它拿来同别的数据一起,在决策系统和分析

36、工具中使用。安全,自由的数据流可提高效率,使具中使用。安全,自由的数据流可提高效率,使你有机会接触或服务于更多的客户,产生新的合你有机会接触或服务于更多的客户,产生新的合作关系。作关系。 新数据源的集成简单性新数据源的集成简单性2-27华华Web serviceWeb service软件重用软件重用 软件重用是一个很大的主题,它有很多的形式和程度。软件重用是一个很大的主题,它有很多的形式和程度。最基本的形式是源代码模块或者类一级的重用。另一种最基本的形式是源代码模块或者类一级的重用。另一种形式是二进制形式的组件重用。但一般重用仅限于代码,形式是二进制形式的组件重用。但一般重用仅限于代码,而数据

37、不能被重用。原因是可以发布组件甚至源代码,而数据不能被重用。原因是可以发布组件甚至源代码,但要发布数据就没那么容易了,除非静态数据。但要发布数据就没那么容易了,除非静态数据。什么是软件重用?什么是软件重用? 而而Web serviceWeb service允许你在重用代码的同时,重用代码后允许你在重用代码的同时,重用代码后面的数据。使用面的数据。使用Web serviceWeb service,你不再像以前那样,要,你不再像以前那样,要先从第三方购买、安装软件组件,再从你的应用程序中先从第三方购买、安装软件组件,再从你的应用程序中调用这些组件。你只需要直接调用远端的调用这些组件。你只需要直接调

38、用远端的Web serviceWeb service就可以了。就可以了。2-28华华Web serviceWeb service软件重用软件重用 用用Web serviceWeb service来集成各种应用中的功能,为用户提供来集成各种应用中的功能,为用户提供一个统一的界面,许多应用程序都会利用一个统一的界面,许多应用程序都会利用Web serviceWeb service,把当前基于组件的应用程序结构扩展为组件和把当前基于组件的应用程序结构扩展为组件和Web Web service service 的混合结构。你也可以在应用程序中使用第三的混合结构。你也可以在应用程序中使用第三方的方的We

39、b service Web service 提供的功能。你还可以把你自己的应提供的功能。你还可以把你自己的应用程序的功能通过用程序的功能通过Web service Web service 提供给别人。所有这些提供给别人。所有这些情况下,可以重用代码和代码后面的数据。总之,情况下,可以重用代码和代码后面的数据。总之,Web Web service service 将是软件重用的一种非常有力的形式。将是软件重用的一种非常有力的形式。2-29华华Web serviceWeb service软件重用例子软件重用例子2-30华华完好封装性和协议规范性完好封装性和协议规范性 Web服务使用开放标准的协议规

40、范,其所有公共的协议均服务使用开放标准的协议规范,其所有公共的协议均使用开放的标准协议进行描述、传输和交换。这些标准使用开放的标准协议进行描述、传输和交换。这些标准协议是完全免费的规范,以便由任意方进行实现,大多协议是完全免费的规范,以便由任意方进行实现,大多数由数由W3C或或OASIS作为最终版本的发布方和维护方。作为最终版本的发布方和维护方。 Web服务是一种部署在服务是一种部署在Web上的对象,自然具备对象的上的对象,自然具备对象的良好封装性,对于使用者而言仅能看到该对象提供的功良好封装性,对于使用者而言仅能看到该对象提供的功能列表。能列表。 Web服务使用协约的规范性,这一特征从对象而

41、来,但服务使用协约的规范性,这一特征从对象而来,但相比一般对象其界面规范更加规范化和易于机器理解。相比一般对象其界面规范更加规范化和易于机器理解。如:规范方法的功能描述、传输、交换和管理,并延伸如:规范方法的功能描述、传输、交换和管理,并延伸到到WebWeb服务的聚合、跨服务的聚合、跨WebWeb服务的事务、工作流等。服务的事务、工作流等。 2-31华华松散耦合松散耦合 松散耦合这一特征源于对象松散耦合这一特征源于对象/ /组件技术,组件技术,WebWeb服务的实现任服务的实现任何变更对用户来说都是透明的(当一个何变更对用户来说都是透明的(当一个WebWeb服务的实现发生服务的实现发生变更时,

42、调用者不会感到,对于调用者来说,只要变更时,调用者不会感到,对于调用者来说,只要WebWeb服务服务的调用界面不变,实现平台从的调用界面不变,实现平台从J2EEJ2EE迁移到迁移到. .NETNET,用户都可,用户都可以一无所知)。对于松散耦合而言,需要有一种适合以一无所知)。对于松散耦合而言,需要有一种适合InternetInternet环境的消息交换协议。而环境的消息交换协议。而XML/SOAPXML/SOAP正是目前最为正是目前最为适合的消息交换协议。适合的消息交换协议。什么是松散耦合什么是松散耦合/ /紧密耦合?紧密耦合? WebWeb服务松散藕合解决了带有严格服务松散藕合解决了带有严

43、格APIsAPIs的基于组件的结构中的基于组件的结构中紧密藕合的许多问题。而且,对传统、紧密藕合的企业软紧密藕合的许多问题。而且,对传统、紧密藕合的企业软件还有更深远的影响。架构师就可通过组合件还有更深远的影响。架构师就可通过组合WebWeb服务的动态服务的动态描述集合来创建企业软件;软件供应商可提供服务的松散描述集合来创建企业软件;软件供应商可提供服务的松散藕合。藕合。2-32华华业务协同(业务协同(orchestration):): 业务协同实际是个商务逻辑过程,是对业务协同实际是个商务逻辑过程,是对Web services中的中的对话进行排序、调整和管理。在新型的、灵活的企业系统对话进行

44、排序、调整和管理。在新型的、灵活的企业系统中,软件可以被组件化以便于在面向服务的结构中对它们中,软件可以被组件化以便于在面向服务的结构中对它们进行重用和修改。在给一个复杂的行为编程时进行重用和修改。在给一个复杂的行为编程时例如一例如一个工作流程或一个在线式的交易个工作流程或一个在线式的交易 运用运用orchestration技技术就可以从逻辑上将离散的功能串列到企业内部的商务过术就可以从逻辑上将离散的功能串列到企业内部的商务过程中,并允许它们运用不断快速发展的程中,并允许它们运用不断快速发展的Web services。 成功协调成功协调Web Services的关键是开发人员可以管理的关键是开

45、发人员可以管理“对话对话” (工作流程发生的顺序)的技术和开发工具。任何(工作流程发生的顺序)的技术和开发工具。任何orchestration系统的一个重要功能就是能够在分布式系统系统的一个重要功能就是能够在分布式系统中处理消息序列,中处理消息序列,“要让要让Web services运行就需要公布的、运行就需要公布的、可靠的消息,以及可靠的消息,以及orchestration 技术,就是协调与暴露在技术,就是协调与暴露在可靠的消息中枢的松散藕合服务的对话可靠的消息中枢的松散藕合服务的对话” 2-33华华商务过程融合解决商务过程融合解决 通过融合企业系统和通过融合企业系统和WebWeb技术,技术

46、,Web servicesWeb services就使整个企就使整个企业商务过程连接在业商务过程连接在InternetInternet中,从而使另一个企业的应用中,从而使另一个企业的应用程序可以公开访问它们程序可以公开访问它们。XML Web ServicesXML Web Services服务以一种更服务以一种更直接,更互利的方式同你的供应商进行业务,也可直接同直接,更互利的方式同你的供应商进行业务,也可直接同你的商业伙伴合作为用户提供完整的客户化的解决方案,你的商业伙伴合作为用户提供完整的客户化的解决方案,有必要的化,你们之间可以交换数据。有必要的化,你们之间可以交换数据。 Gartner

47、 GroupGartner Group的分析家的分析家Jim SinurJim Sinur说。说。“这个新的这个新的Web/Web/企企业系统融合而成的中间件业系统融合而成的中间件包括应用程序服务器、负责集包括应用程序服务器、负责集成的成的“经济人经济人”、商务过程管理人员和、商务过程管理人员和Web servicesWeb services通通路路形成了企业系统的基础,形成了端到端互用性平台,形成了企业系统的基础,形成了端到端互用性平台,它把企业内部、防火墙外部的企业系统连接起来。它把企业内部、防火墙外部的企业系统连接起来。”。2-34华华 Web service特点总结特点总结 Web s

48、ervice是创建可互操作的分布式应用程序的新平台。是创建可互操作的分布式应用程序的新平台。Web service 的的松散耦合实现了松散耦合实现了跨平台的可互操作性。为跨平台的可互操作性。为了达到这一目标,了达到这一目标,Web service 是完全基于是完全基于XML、XSD等独立于平台、独立于软件供应商的标准的。等独立于平台、独立于软件供应商的标准的。 Web service在应用程序跨平台和跨网络进行交互的时候在应用程序跨平台和跨网络进行交互的时候是非常有用的。是非常有用的。Web serviceWeb service适用于应用程序集成、适用于应用程序集成、B2BB2B集成、代码和数

49、据重用,以及通过集成、代码和数据重用,以及通过WebWeb(跨越防火墙的通(跨越防火墙的通信)进行客户端和服务器的通信的场合。信)进行客户端和服务器的通信的场合。2-35华华1 1、 Business-Oriented Web Service: Business-Oriented Web Service: 该类服务针对该类服务针对的是那些面向企业应用服务,包括企业内部的的是那些面向企业应用服务,包括企业内部的ERPERP系统,系统,企业间的企业间的SCM/CRMSCM/CRM等系统。当这些系统以等系统。当这些系统以WebWeb服务的形式服务的形式在网络在网络( (InternetInterne

50、t和和intranet)intranet)中出现时,企业内的应用中出现时,企业内的应用集成将更未容易,而在企业间的众多合作伙伴的系统对集成将更未容易,而在企业间的众多合作伙伴的系统对接也将不再是无法完成的任务。接也将不再是无法完成的任务。1.5 Web Service 使用使用实际也中国环境中面向政务的实际也中国环境中面向政务的Web ServiceWeb Service处理。处理。2-36华华2、Consumer-Oriented Web Service: 此类服务针对原先此类服务针对原先B2C网站的改造,为这些网站的改造,为这些Browser-Oriented的的Web应用应用增加了增加了

51、Web服务的应用界面,使得第三方的桌面工具或服务的应用界面,使得第三方的桌面工具或其自身提供的增值桌面工具,能利用更优秀的用户界面其自身提供的增值桌面工具,能利用更优秀的用户界面提供跨越多个提供跨越多个B2C的服务。使得用户使用的服务。使得用户使用Internet更为方更为方便,能够获得更加便捷的服务。比如我们完全就可以在便,能够获得更加便捷的服务。比如我们完全就可以在个人理财桌面系统中集成个人理财桌面系统中集成(调用调用)Internet上的股票价格查上的股票价格查询询Web服务、机票预定服务、机票预定Web服务等,使得个人理财应用服务等,使得个人理财应用的自动化程度更高。的自动化程度更高。

52、 1.5 Web Service 使用使用2-37华华3 3、 Device-Oriented Web Service: Device-Oriented Web Service: 此类服务的使用此类服务的使用终端一般是手持设备和家电,对于前者而言,可以在不终端一般是手持设备和家电,对于前者而言,可以在不用修改网络服务的体系架构的前提下,令先前的网络服用修改网络服务的体系架构的前提下,令先前的网络服务支持除务支持除PCPC以外的各种终端,比如以外的各种终端,比如PalmPalm、PocketPCPocketPC、手、手机等。如此,那些天气预报服务、机等。如此,那些天气预报服务、EmailEmai

53、l服务、主动信服务、主动信息服务等将更为有效和便捷。而后者对于家电,则可能息服务等将更为有效和便捷。而后者对于家电,则可能是一个市场的启动期,有了是一个市场的启动期,有了WebWeb服务作为基础框架,智服务作为基础框架,智能型的日用家电将真正获得标准的支持,从而有了广泛能型的日用家电将真正获得标准的支持,从而有了广泛使用的可能。使用的可能。1.5 Web Service 使用使用2-38华华4 4、System-Oriented Web Service: System-Oriented Web Service: 一些传统意义上的一些传统意义上的系统服务,比如用户权限认证,系统监控、统一消息发系

54、统服务,比如用户权限认证,系统监控、统一消息发布等,如果被迁移到全球范围的布等,如果被迁移到全球范围的InternetInternet上,或者企业上,或者企业内部的内部的intranetintranet上,其作用范围将从单个系统或局部网上,其作用范围将从单个系统或局部网络拓展到整个企业网络或整个络拓展到整个企业网络或整个InternetInternet。如此,基于同。如此,基于同一系统服务的不同应用将得以在整个一系统服务的不同应用将得以在整个InternetInternet环境中部环境中部署,譬如跨国企业的所有在线服务可以使用同一个用户署,譬如跨国企业的所有在线服务可以使用同一个用户权限认证权

55、限认证WebWeb服务。服务。1.5 Web Service 使用使用2-39华华4 4、System-Oriented Web Service: System-Oriented Web Service: 一些传统意义上的一些传统意义上的系统服务,比如用户权限认证,系统监控、统一消息发系统服务,比如用户权限认证,系统监控、统一消息发布等,如果被迁移到全球范围的布等,如果被迁移到全球范围的InternetInternet上,或者企业上,或者企业内部的内部的intranetintranet上,其作用范围将从单个系统或局部网上,其作用范围将从单个系统或局部网络拓展到整个企业网络或整个络拓展到整个企业

56、网络或整个InternetInternet。如此,基于同。如此,基于同一系统服务的不同应用将得以在整个一系统服务的不同应用将得以在整个InternetInternet环境中部环境中部署,譬如跨国企业的所有在线服务可以使用同一个用户署,譬如跨国企业的所有在线服务可以使用同一个用户权限认证权限认证WebWeb服务。服务。1.5 Web Service 使用使用2-40华华Web serviceWeb service主要成員(角色):主要成員(角色):1. 1. Web ServiceWeb Service:ServiceService是一种应用程序,提供者将它公是一种应用程序,提供者将它公布在布在

57、InternetInternet上提供服务。上提供服务。2. 2. Web Service ProviderWeb Service Provider:从架构看它是提供服务及服务:从架构看它是提供服务及服务本身的执行环境。本身的执行环境。3. 3. Web Service RequesterWeb Service Requester:一种:一种ClientClient或应用程序,在或应用程序,在InternetInternet上搜寻、使用上搜寻、使用Web ServiceWeb Service。4. Web Service Registry4. Web Service Registry:是一种存

58、储:是一种存储Web ServiceWeb Service信息信息的环境,让的环境,让Service ProviderService Provider注册注册ServiceService信息;让信息;让Service RequesterService Requester搜寻服务,並取得和搜寻服务,並取得和Web ServiceWeb Service沟通沟通的相关信息。的相关信息。Web ServiceWeb Service运作成员运作成员2-41华华1.1.描述:让描述:让Web Service RequesterWeb Service Requester知道知道Web ServiceWeb Service提供服务提供服务的內容,以及和其沟通的方式,需要有一种描述的內容,以及和其沟通的方式,需要有一种描述Web ServiceWeb Service的語言。的語言。2.2.发布:通过某注册机构将发布:通过某注册机构将Web ServiceWeb Service的描述信息登陆某公的描述信息登陆某公开的开的Web Service RegistryWeb Service Registry。3.3.寻找:寻找:Service RequesterService Requester向向Web Service RegistryWeb Servi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论