服务科学与工程课件:5面向服务架构.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《服务科学与工程课件:5面向服务架构.ppt》由用户(罗嗣辉)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 服务 科学 工程 课件 面向 架构
- 资源描述:
-
1、第第5 5章章 面向服务架构面向服务架构2022-1-20西北工业大学软件与微电子学院1服务科学与工程概论Introduction to Service Science & Engineering第5章 面向服务的架构第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院23面向服务与SOA基础SOA的体系结构模式服务组合技术面向服务的建模与分析5.15.25.35.45.5Web服务与SOASOA治理5.6第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院3v软件架构v面向服务的原则vSOA的定义v提出SOA的动机v
2、SOA和分布式信息系统体系结构vSOA和软件开发vSOA中的基本构件与连接件vSOA的典型特征与优势第第5 5章章 面向服务架构面向服务架构2022-1-20西北工业大学软件与微电子学院45.1.1 软件架构第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院5vThe software architecture of a program or computing system is the structure or structures of the system, which comprise software elements, the extern
3、ally visible properties of those elements, and the relationships among them.vThe design of application or system software that incorporates protocols and interfaces for interacting with other programs and for future flexibility and expandability. A self-contained, stand-alone program would have prog
4、ram logic, but not a software architecture.第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院6v架构是系统的组织结构。架构还包括“符合”系统完整性、经济约束条件、审美需求和样式。它并不仅注重对内部的考虑,而且还在系统的用户环境和开发环境中对系统进行整体考虑,即同时注重对外部的考虑。v架构有两个公共元素:一是一个软件系统从整体到部分的最高层次的划分,一个建造一个系统所作出的最高层次的、以后难以更改的、商业的和技术的决定 。Martin Fowler第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北
5、工业大学软件与微电子学院7v在计算的算法和数据结构之外,设计并确定的系统整体结构问题,包括总体组织结构和全局控制结构;通信、同步和数据访问的协议;设计元素的功能分配;物理分布;设计元素的组成;定标与性能;备选设计的选择。第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院8第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院9v可靠性(Reliable) v安全性(Secure)v可伸缩性(Scalable) v可定制化(Customizable) v可扩展性(Extensible)v可维护性(Maintainable
6、)v客户体验(Customer Experience)v市场时机(Time to Market) 第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院10v逻辑架构第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院11v物理架构第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院12v系统架构 系统的非功能性特征,如可扩展性、可靠性、强壮性、灵活性、性能等。 第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院13v需要有广泛的软件理论知识和
7、相应的经验来实施和管理软件产品的高级设计。v软件架构师定义和设计软件的模块化,模块之间的交互,用户界面风格,对外接口方法,创新的设计特性,以及高层事物的对象操作、逻辑和流程。 第第5 5章章 面向服务架构面向服务架构2022-1-20西北工业大学软件与微电子学院145.1.2 面向服务的原则第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院15v服务服务是整个SOA实现的核心核心。SOA的基本元素是服务,SOA 指定一组实体(服务提供者、服务消费者、服务注服务提供者、服务消费者、服务注册表、服务条款、服务代理和服务契约册表、服务条款、服务代理和服务契约)
8、,这些实体详细说明了如何提供和消费服务如何提供和消费服务。这些服务是可互操作的、独立的、模块化的、位置明确的、松耦合的,并且可以通过网络查找其地址。vW3C将服务定义为:服务提供者完成一组工作,为服务消费者交付所需的最终结果。最终结果通常会使使用者的状态发生变化,但也可能使提供者的状态改变,或者双方都产生变化。 第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院16v从解决方案角度解决方案角度看,SO 是一组模式和实践惯例,用于开发单个服务和解决方案,它们利用了服务模型,因而能够在不同系统之间集成。服务封装其操作系统和专用协议的特性,允许使用标准协议和极
9、传统的接口访问其业务逻辑和信息。在稳定的接口背后,可以持续升级和改进实现,而不会对使用该服务的解决方案产生负面影响;v从资产组合角度资产组合角度看,面向服务的企业是分解、集成和管理组织的技术资产组合的一条途径,它将服务模型用作开发和操作分布式业务系统的基础。第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院17业务流程层业务流程层服务接口层应用层应用层业务逻辑业务逻辑应用逻辑应用逻辑服务接口层服务接口层第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院18v服务建立了一个介于业务层与应用层之间的高级抽象形态,服务能
10、够封装应用逻辑和业务流程逻辑。第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院19业务流程层业务流程层服务接口层应用层应用层服务接口层服务接口层服务接服务接口表示口表示物理层物理层封装封装第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院20v服务建立了一个介于业务层与应用层之间的高级抽象形态,服务能够封装应用逻辑和业务流程逻辑。v业务逻辑通过服务扩展。第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院21v服务可复用v服务有一个正式契约v服务是松散耦合的v服务是底层逻辑抽
11、象的v服务是可组合的v服务是自治的v服务是无状态的v服务是可被发现的第第5 5章章 面向服务架构面向服务架构2022-1-20西北工业大学软件与微电子学院225.1.3 SOA的定义第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院23v从字面上看,SOA=Service(服务)+体系结构(Architecture)第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院24v一种体系结构风格,它将应用程序的不同功能单元应用程序的不同功能单元服务服务(service),通过服务间定义良好的接口和契约服务间定义良好的接口和
12、契约(contract)联系起来。接口采用中立中立的方式定义,独立于具体实现服务独立于具体实现服务的硬件平台、操作系统和编程语言的硬件平台、操作系统和编程语言,使得构建的系统中的服务可以使用统一和标准的方式进行通信。这种具有中立的接口定义的特征称为服务之间的松耦合服务之间的松耦合。第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院25 第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院26vW3C将服务定义为:服务提供者完成一组工作,为服务使用者交付所需的最终结果。第第5 5章章 面向服务的架构面向服务的架构202
13、2-1-20西北工业大学软件与微电子学院27v三种角色:l服务提供者(Service Provider)l服务请求者(Service Requestor)l服务目录 (Service Registry)v三个操作l发布(Publish)l查找(Find)l绑定(Bind)第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院28v一个组件模型;v将应用程序的不同功能单元(服务)通过这些服务之间定义良好的接口和契约联系起来;v接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言;v构建在各种这样的系统中的服务可以以一种统一和通用的
14、方式进行交互。 第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院29v系统(程序) = 算法 + 数据结构 (1960s )v系统 = 子程序 + 子程序 (1970s )v系统 = 对象 + 对象关联机制 (1980s )v系统 = 软构件 + 连接件 (1990s )v系统 = 服务 + 服务连接件 (2000s)简单复杂系统规模与复杂度封闭开放系统开放度细粗构件粒度构件连接件关注层面 IT技术技术 商务过程商务过程 封闭封闭 开放开放 个人个人企业内企业内企业间企业间全球全球第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大
15、学软件与微电子学院30v一般来说,SOA实现平台包含的组件可以分为两类:一类面向系统功能,另一类面向系统功能的质量属性,或称为非功能属性。包括:l服务发布和发现:服务提供者可以把服务描述以及其他服务元信息发布到服务注册中心,服务消费者通过服务注册中心发现需要的服务;l服务协作:管理服务之间的协作通信;l服务组合:提供编排基本服务组成复合服务的语言;并提供执行这种语言的引擎;l服务通信:实现服务之间基于消息的通信;l服务描述:提供定义服务描述的语言;l服务安全:保障SOA应用的安全性, 比如身份识别、数字签名、消息的加 密解密、访问授权、信任联盟管理等;l服务事务:保障SOA应用的状态一致性;l
16、服务管理:实现服务运行时的监控和管理。第第5 5章章 面向服务架构面向服务架构2022-1-20西北工业大学软件与微电子学院315.1.4 提出SOA的动机第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院32v现代企业已经不再是封闭的企业,市场分工的日益专业化使得企业之间可能存在大量频繁的交互行为企业之间可能存在大量频繁的交互行为,以发挥各自的竞争优势:l供应链:供应商-制造商;l客户关系管理:制造商-物流商-客户v这种业务上的交互体现为企业业务流程的交互企业业务流程的交互/互操作互操作,同时一定需要企业信息系统的支持,因此体现为软件系统软件系统之间的
17、集成与互操作之间的集成与互操作。l互操作(Interoperability):能够在异构的、分布式的系统之间交换和使用信息的能力;l不仅是不同企业之间,甚至一个企业内部的各个部门之间都有可能存在大量的交互。第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院33第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院34第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院35v不同企业所应用的软件系统是不同的(异构的异构的):l技术平台不同技术平台不同:J2EE-based、.Net-
18、basedl软件体系结构不同软件体系结构不同:message-based、file-based、process-basedl数据格式不同数据格式不同:同样的“订单”对象,不同的属性集合lv集成这些分布式的软件系统,在它们之间传递数据和消息,是一件非常困难的事情。EJBCORBACOMCORBA第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院36第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院37v企业的业务是频繁变化的频繁变化的;v企业间的协同关系也不是固定的,随着业务流程的变化而随之变化;v企业的IT应用系统
19、要能够快速支持这种变化的需求快速支持这种变化的需求。第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院38Change: Customer Order EntryChange: Shared Service Marketing, Billing, Receivables第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院39Change: Supplier Managements Inventory (VMI)Change: Shipping by FedEx, DHL or UPS第第5 5章章 面向服务的架构面向
20、服务的架构2022-1-20西北工业大学软件与微电子学院40v分布式企业间业务的协同。分布式企业间业务的协同。v通过通过InternetInternet连接在一起的异构连接在一起的异构企业应用软件系统的集成、交互企业应用软件系统的集成、交互与互操作。与互操作。v当业务当业务(Business)(Business)发生变化时,发生变化时,ITIT系统能够快速响应。系统能够快速响应。第第5 5章章 面向服务架构面向服务架构2022-1-20西北工业大学软件与微电子学院415.1.5 SOA和分布式信息系统体系结构第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子
21、学院42v构造一个信息系统会遇到的三类问题:l如何把信息系统的功能以图形或字符人机界面的形式呈现给系统用户并接收用户的输入?l如何编写实际的应用逻辑以实现系统功能?l如何利用已有资源,包括数据库、文件系统等完成对资源的管理和操作?第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院43v信息系统的分层逻辑体系结构l负责界面展示和接收用户输入的部分称为表示层表示层;l负责系统应用逻辑的部分称为应用逻辑层应用逻辑层;l负责资源接入的部分称为资源管理层资源管理层; l三层之间存在着线性依赖线性依赖关系。 v即底层提供功能和服务以支持高层的 功能和服务。 第第5
22、5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院44v单列(1-tier)体系结构v两列(2-tier)分布体系结构v三列(3-tier)分布体系结构v面向服务的分布式体系结构第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院45v单列(1-tier)体系结构l所有软件功能集中由主机完成,而分布的是仅仅具有输入输出功能的哑终端。l优点:v所有功能都在一致的系统环境中实现, 可以方便地对系统进行调优;v由于客户端没有软件,因此不需要对 客户端进行开发、部署和维护。 l缺点:v系统组成部分耦合紧密,很难维护和扩展;v客户端功
23、能单一,没有提供外部系统接口 。 第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院46v两列(2-tier)分布体系结构l即客户-服务器(C/S,Client/Server)体系结构;l表示层从集中式的服务器中剥离出来转移给客户端;l优点:v可以利用客户机的处理能力,降低 了服务器的运算负担;v使得针对不同用户呈现个性化的界 面内容成为可能。l缺点:v客户端和服务器之间耦合紧密;v单一服务器所能支持的客户机数量有限;v维护代价高。 第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院47v三列(3-tier)分布体
24、系结构l将服务器端的应用逻辑层和资源管理层分离,把应用逻辑交给单独的应用服务器处理;l表示层被一分为二,通用功能由标准应用软件(如web浏览器)承担,非通用功能由特定的分布式计算平台实现(如J2EE的JSP和Java Servlet),浏览器和应用服务器之间的表示层之间通过标准文档形式的规范HTML对话;l表示层和应用逻辑层通常部署在一个 服务器上,两者直接的关系是紧耦合 关系,分开部署并不会带来灵活性。第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院48v三列(3-tier)分布体系结构l优点:v浏览器和应用服务器之间是松耦合关系,两者通过标准HTM
25、L语言交互,这样浏览器可以在任意平台上用任意编程语言实现;v应用服务器和资源服务器之间是松耦合关系,应用服务器可以通过标准的数据访问接口,如JDBC和ODBC,灵活访问不同厂商、不同平台的数据库;v应用逻辑层可以部署在多个服务器节点的集群上,集群可以提供复制、负载平衡、故障切换等功能,保障了应用的可伸缩性、性能和可靠性。l缺点:v表示层和应用逻辑层之间是紧耦合的,两者在技术平台上耦合紧密。第第5 5章章 面向服务的架构面向服务的架构2022-1-20西北工业大学软件与微电子学院49v面向服务的分布式体系结构l把应用逻辑层封装为Web服务,这样表示层就可以通过XML/SOAP协议与其实现松耦合交
展开阅读全文