面向服务体系架构SOA课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《面向服务体系架构SOA课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 服务体系 架构 SOA 课件
- 资源描述:
-
1、面向服务体系架构面向服务体系架构SOASOA马殿富马殿富北航计算机学院北航计算机学院2002006-056-05计算机学院2主要内容主要内容 分布式系统概述分布式系统概述 什么是什么是WebWeb服务服务 面向服务的体系结构面向服务的体系结构 SOASOA的功能描述与质量属性的功能描述与质量属性 SOASOA的基本特性的基本特性 SOASOA的优势与挑战的优势与挑战计算机学院3分布式系统分布式系统 定义:分布式系统属组件分布在网络计定义:分布式系统属组件分布在网络计算机上且通过消息传递进行通信和动作算机上且通过消息传递进行通信和动作协调的系统。协调的系统。分布式系统特征:分布式系统特征:并发性
2、、缺乏全局时钟、故障独立性。并发性、缺乏全局时钟、故障独立性。构造和使用分布式系统的主要动力来源构造和使用分布式系统的主要动力来源是资源共享。是资源共享。计算机学院4分布式系统特征分布式系统特征并发性:并发性:在一个计算机网络中,程序并发执行,在需要时共享资源,系统处理在一个计算机网络中,程序并发执行,在需要时共享资源,系统处理共享资源的能力应该随着网络资源的增加而增加;共享资源的能力应该随着网络资源的增加而增加;如何协调并发执行的共享资源的企业程序是一个重要问题。如何协调并发执行的共享资源的企业程序是一个重要问题。缺乏全局时钟:缺乏全局时钟:因为网络上计算机同步时钟的准确性受到限制,所以程序
3、需要协调时因为网络上计算机同步时钟的准确性受到限制,所以程序需要协调时仅能通过交换消息来协调它们的动作;仅能通过交换消息来协调它们的动作;通过网络发送消息作为唯一通信方式的直接结果,同步是重要的问题通过网络发送消息作为唯一通信方式的直接结果,同步是重要的问题故障独立性:故障独立性:所有计算机都可能发生故障;所有计算机都可能发生故障;网络故障导致与之互联的计算机的隔离。计算机中程序无法检测网络网络故障导致与之互联的计算机的隔离。计算机中程序无法检测网络时出现了故障还是网络运行的比通常慢;时出现了故障还是网络运行的比通常慢;计算机的故障或系统中程序的一场终止并不能立即被与之通信的组件计算机的故障或
4、系统中程序的一场终止并不能立即被与之通信的组件感知,系统中每个组件对单独地出现故障,而其他组建还在运行。感知,系统中每个组件对单独地出现故障,而其他组建还在运行。计算机学院5分布式系统实例分布式系统实例 因特网因特网是一个巨大的多种类型计算机网络的互连集合。因是一个巨大的多种类型计算机网络的互连集合。因特网上计算机程序通过传递消息交互,采用了一种公共通特网上计算机程序通过传递消息交互,采用了一种公共通信手段。因特网协议是一项重大的技术成果,它使得一个信手段。因特网协议是一项重大的技术成果,它使得一个在运行的程序能给在任何地方的程序发送消息。在运行的程序能给在任何地方的程序发送消息。企业内部网企
5、业内部网是因特网的一个部分,实现独立管理,具有边是因特网的一个部分,实现独立管理,具有边界,通过配置能够执行本地安全策略。防火墙作用是防止界,通过配置能够执行本地安全策略。防火墙作用是防止未授权消息的发出和进入来保护企业内部网,防护墙是通未授权消息的发出和进入来保护企业内部网,防护墙是通过过滤进出消息实现其功能。过过滤进出消息实现其功能。移动计算移动计算Kleinrock1997Kleinrock1997是指用户在移动中执行计算任务是指用户在移动中执行计算任务的能力或访问他们所处环境以外的位置的能力。的能力或访问他们所处环境以外的位置的能力。普适计算普适计算 WeiserWeiser 1993
6、 1993是指对多种在用户的物理环境中存是指对多种在用户的物理环境中存在的小型的、便宜的计算设备的控制。它们的计算行为将在的小型的、便宜的计算设备的控制。它们的计算行为将紧密地、透明地捆绑到它们的物理功能上。紧密地、透明地捆绑到它们的物理功能上。计算机学院6技术挑战技术挑战 异构性异构性 开放性开放性 安全性安全性 并发性并发性 透明性透明性 可扩展性可扩展性 故障与容错故障与容错计算机学院7WebWeb服务服务 IBMIBM定义:定义:WebWeb服务是一种接口,它描述了一组操作,可以使用标准的服务是一种接口,它描述了一组操作,可以使用标准的XMLXML消息传递技术,经由网络访问这些操作。消
7、息传递技术,经由网络访问这些操作。WebWeb服务可完成指定的任务或任务组。服务可完成指定的任务或任务组。WebWeb服务采用标准的、形式化的服务采用标准的、形式化的XMLXML概念进行描述,称之为服概念进行描述,称之为服务描述。务描述。服务描述提供了与该服务进行交互所必须的所有细节,包括服务描述提供了与该服务进行交互所必须的所有细节,包括消息格式消息格式(即操作的细节即操作的细节)、传输协议和位置。、传输协议和位置。接口的实质是隐去了服务的实现细节,以致于它的使用可以接口的实质是隐去了服务的实现细节,以致于它的使用可以独立于实现他的硬件或软件平台,独立于用来编写它的编程独立于实现他的硬件或软
8、件平台,独立于用来编写它的编程语言。语言。允许并促进了基于允许并促进了基于WebWeb服务的应用成为松散耦合的、面向构件服务的应用成为松散耦合的、面向构件的、跨技术的实现。的、跨技术的实现。WebWeb服务可以单独使用,也可以与其他服务可以单独使用,也可以与其他WebWeb服务协作执行一个复杂的任务集或商业事务。服务协作执行一个复杂的任务集或商业事务。计算机学院8WebWeb服务服务MicrosoftMicrosoft定义:定义:WebWeb服务是一个向其他应用提供数据和服务的应用服务是一个向其他应用提供数据和服务的应用逻辑单元。应用程序通过无处不在的逻辑单元。应用程序通过无处不在的WebWe
9、b协议和数协议和数据格式访问据格式访问WebWeb服务,如服务,如HTTPHTTP、XMLXML和和SOAPSOAP,而无,而无需关心每个需关心每个WebWeb服务是如何实现的。服务是如何实现的。SUNSUN定义:定义:WebWeb服务是软件构件这类构件具有被发现、可组服务是软件构件这类构件具有被发现、可组合和重组合的特性,用于解决用户的问题或要求,合和重组合的特性,用于解决用户的问题或要求,JavaJava语言和语言和XMLXML是是WebWeb服务的最重要技术。服务的最重要技术。计算机学院9从业务、商务、技术视角看从业务、商务、技术视角看 业务视角:业务视角:WebWeb服务就是关于集成的
10、技术,即:集成同一机构服务就是关于集成的技术,即:集成同一机构内的应用功能,或集成商务伙伴之间的应用。内的应用功能,或集成商务伙伴之间的应用。商务视角:商务视角:WebWeb服务是一商务过程或是商务过程中的步骤。内服务是一商务过程或是商务过程中的步骤。内部的或外部的商务伙伴都可经由网络使用这项服部的或外部的商务伙伴都可经由网络使用这项服务,以达到某种业务目标。务,以达到某种业务目标。技术视角:技术视角:WebWeb服务只是一个或多个相关操作的集合,这些操服务只是一个或多个相关操作的集合,这些操作可以由网络访问,并可以用服务描述来描述。作可以由网络访问,并可以用服务描述来描述。计算机学院10面向
11、服务面向服务 TCPTCPIPIP 作为网络开放平台能够支持诸如客户作为网络开放平台能够支持诸如客户/服务器计算的体系结构;服务器计算的体系结构;因特网因特网 基于基于HTMLHTML和和HTTPHTTP,它提供了第一个真正全球开放的、可移植的用,它提供了第一个真正全球开放的、可移植的用户界面;户界面;JavaJava 实现开放和可移植的编程;实现开放和可移植的编程;XMLXML 实现开放和可移植的数据交换;实现开放和可移植的数据交换;webweb服务服务 实现基于开放式标准的广泛集成。实现基于开放式标准的广泛集成。计算机学院11服务服务WEBRPC单机单机面向服务面向服务 软件应用形态软件应
12、用形态定制定制计算机学院12商品消费软件服务服务注册中心服务注册中心服务提供者服务提供者服务消费者服务消费者发发现现服服务务发发布布服服务务使用服务使用服务商品消费中心商品消费中心商品提供者商品提供者商品消费者商品消费者购购买买商商品品提提供供商商品品计算机学院13面向服务体系架构面向服务体系架构服务提供者:服务提供者:一个可通过网络寻址的实体,它接受和执一个可通过网络寻址的实体,它接受和执行来自使用者的请求。行来自使用者的请求。它将自己的服务和接口契约发布到服务注它将自己的服务和接口契约发布到服务注册中心,以便服务使用者可以发现和访问册中心,以便服务使用者可以发现和访问该服务。该服务。服务使
13、用者:服务使用者:一个应用程序、一个软件模块或需要一个一个应用程序、一个软件模块或需要一个服务的另一个服务。服务的另一个服务。它发起对注册中心中的服务的查询,通过它发起对注册中心中的服务的查询,通过传输绑定服务,并且执行服务功能。传输绑定服务,并且执行服务功能。服务使用者根据接口契约来执行服务。服务使用者根据接口契约来执行服务。服务注册中心:服务注册中心:服务发现的支持者;服务发现的支持者;它包含一个可用服务的存储库,并允许感它包含一个可用服务的存储库,并允许感兴趣的服务使用者查找服务提供者接口。兴趣的服务使用者查找服务提供者接口。计算机学院14面向服务体系架构面向服务体系架构 面向服务的体系
14、结构中的每个实体都扮演着服务提供面向服务的体系结构中的每个实体都扮演着服务提供者、使用者和注册中心这三种角色中的某一种(或多者、使用者和注册中心这三种角色中的某一种(或多种)。种)。面向服务的体系结构中的操作包括:面向服务的体系结构中的操作包括:发布发布(Publish)(Publish):为了使服务可访问,需要发布服务描为了使服务可访问,需要发布服务描述以使服务使用者可以发现它。述以使服务使用者可以发现它。发现发现(Find)(Find):服务请求者定位服务,方法是查询服务注服务请求者定位服务,方法是查询服务注册中心来找到满足其标准的服务。册中心来找到满足其标准的服务。绑定绑定(Bind)(
15、Bind)和调用和调用(invoke)(invoke):在检索到服务描述之后,在检索到服务描述之后,服务使用者继续根据服务描述中的信息来调用服务。服务使用者继续根据服务描述中的信息来调用服务。计算机学院15面向服务架构面向服务架构SOASOA 一种体系结构风格,它将应用程序的不同功能单一种体系结构风格,它将应用程序的不同功能单元元服务服务(service)(service),通过服务间定义良好的接口,通过服务间定义良好的接口和契约和契约(contract)(contract)联系起来。接口采用中立的方联系起来。接口采用中立的方式定义,独立于具体实现服务的硬件平台、操作式定义,独立于具体实现服务
16、的硬件平台、操作系统和编程语言,使得构建的系统中的服务可以系统和编程语言,使得构建的系统中的服务可以使用统一和标准的方式进行通信。这种具有中立使用统一和标准的方式进行通信。这种具有中立的接口定义的特征称为服务之间的松耦合。的接口定义的特征称为服务之间的松耦合。计算机学院16面向服务架构面向服务架构SOASOA SOA SOA 的体系架构指导描述了体系结构的式样、要的体系架构指导描述了体系结构的式样、要素和关系,以及在整个开发生命周期中他们是如素和关系,以及在整个开发生命周期中他们是如何被识别、指定和管理的。通常体系结构的目标,何被识别、指定和管理的。通常体系结构的目标,特别是体系结构建模,提供
17、了一个适当的抽象级特别是体系结构建模,提供了一个适当的抽象级别,在此级别上,可以容易地识别体系结构的要别,在此级别上,可以容易地识别体系结构的要素,并且对要素进行控制。素,并且对要素进行控制。Web ServicesWeb Services的目标是即时装配、松散耦合以及的目标是即时装配、松散耦合以及自动集成。自动集成。计算机学院17服务(服务(serviceservice)是整个是整个SOASOA实现的核心。实现的核心。SOASOA的基本元素是服务,的基本元素是服务,SOA SOA 指定一组实体指定一组实体(服务提供者、服务消费者、服服务提供者、服务消费者、服务注册表、服务条款、服务代理和服务
18、契约务注册表、服务条款、服务代理和服务契约),这,这些实体详细说明了如何提供和消费服务。这些服些实体详细说明了如何提供和消费服务。这些服务是可互操作的、独立的、模块化的、位置明确务是可互操作的、独立的、模块化的、位置明确的、松耦合的并且可以通过网络查找其地址。的、松耦合的并且可以通过网络查找其地址。计算机学院18服务规范服务规范 服务规范有三个规范要素,根据服务的建模类型服务规范有三个规范要素,根据服务的建模类型可对它们进行选择:可对它们进行选择:结构规范结构规范定义了可以调用的操作和由这些操作销毁定义了可以调用的操作和由这些操作销毁或创造出的消息。或创造出的消息。行为规范行为规范表示服务客户
19、和所指定服务之间的任意预表示服务客户和所指定服务之间的任意预期的有意义的协议或会话。期的有意义的协议或会话。策略规范策略规范表示服务的策略主张和约束。策略主张可表示服务的策略主张和约束。策略主张可能包括安全性、可管理性等等。能包括安全性、可管理性等等。计算机学院19SOASOA协议栈协议栈计算机学院20功能性方面功能性方面服务服务 传输协议传输协议:用于将来自服务使用者的服务请求传:用于将来自服务使用者的服务请求传送给服务提供者,并且将来自服务提供者的响应送给服务提供者,并且将来自服务提供者的响应传送给服务使用者。传送给服务使用者。通信协议:通信协议:一种经过协商的机制,通过这种机制,一种经过
20、协商的机制,通过这种机制,服务提供者和服务使用者可以就将要请求的内容服务提供者和服务使用者可以就将要请求的内容和将要返回的内容进行沟通。和将要返回的内容进行沟通。服务描述:服务描述:一种经过协商的模式,用于描述服务一种经过协商的模式,用于描述服务是什么、应该如何调用服务以及成功地调用服务是什么、应该如何调用服务以及成功地调用服务需要什么数据。需要什么数据。服务:服务:描述供使用的操作。描述供使用的操作。计算机学院21功能性方面功能性方面流程流程业务流程业务流程 一个服务的集合,可以按照特定的顺序并使用一一个服务的集合,可以按照特定的顺序并使用一组特定的规则进行调用,以满足业务要求;组特定的规则
21、进行调用,以满足业务要求;业务流程本身也看作是服务,这样就产生了业务业务流程本身也看作是服务,这样就产生了业务流程可以由不同粒度的服务组成的观念。流程可以由不同粒度的服务组成的观念。计算机学院22功能性方面功能性方面服务注册中心服务注册中心服务注册中心服务注册中心 一个服务和数据描述的存储库;一个服务和数据描述的存储库;服务提供者可以通过服务注册中心发布它们的服服务提供者可以通过服务注册中心发布它们的服务,而服务使用者可以通过服务注册中心发现或务,而服务使用者可以通过服务注册中心发现或查找可用的服务;查找可用的服务;服务注册中心可以给需要集中式存储库的服务提服务注册中心可以给需要集中式存储库的
22、服务提供其他的功能。供其他的功能。计算机学院23服务质量方面服务质量方面策略是规则集策略是规则集 在这些条件和规则之下,服务提供者可以使服务可用于使用者。在这些条件和规则之下,服务提供者可以使服务可用于使用者。策略既有功能性方面,也有与服务质量有关的方面;因此,在策略既有功能性方面,也有与服务质量有关的方面;因此,在功能和服务质量两个部分中都有策略功能。功能和服务质量两个部分中都有策略功能。安全性是规则集安全性是规则集 应用于调用服务的服务使用者的身份验证、授权和访问控制。应用于调用服务的服务使用者的身份验证、授权和访问控制。事务是属性集事务是属性集 应用于一组服务,以提供一致的结果。如果要使
展开阅读全文