SOA技术研究报告.doc
《SOA技术研究报告.doc》由会员分享,可在线阅读,更多相关《SOA技术研究报告.doc(56页珍藏版)》请在三一办公上搜索。
1、科 学 技 术 研 究 工 作 报 告基于SOA的数据仓库架构张芳宁V1.0青岛大学邵峰晶教授科研梯队 2010年 04 月 28 日文档修订记录版本编号或者更改记录编号*变化状态简要说明(变更内容和变更范围)日期变更人批准日期批准人*变化状态:A增加,M修改,D删除,N正式发布文档审批信息序号审批人角色审批日期签字备注目 录前 言5第一章 概述61.1 术语61.2 为什么需要SOA71.3 SOA 的主要应用场景81.4 什么是SOA81.5 SOA 的特点81.5.1 重点关注服务81.5.2 松耦合91.5.3 重构的灵活性91.5.4 对标准的支持101.6 SOA 带来的好处10第
2、二章 技术资源122.1 研究机构122.2 国内外厂商122.3 国内外网站、会议与技术刊物122.4 国内外标准122.4.1 标准组织122.4.2 标准分类13第三章 SOA技术参考架构223.1 SOA 技术参考架构223.2 SOA 相关元素233.2.1 资源233.2.2 新开发服务243.2.3 人员243.2.4 其他平台253.3 适配器253.4 连通服务263.5 协作服务263.6 流程服务273.7 业务服务273.8 交互服务283.9 信息服务283.10 运行管理服务与工具293.11 资源管理服务与工具293.12 安全服务30第四章 SOA的关键技术31
3、4.1 关键技术概述314.2 服务的描述314.3 服务的注册和查找324.3.1 服务注册中心324.3.2 服务查找334.4 服务的管理334.5 服务间的通信344.5.1 通信协议354.5.2 通信模式354.5.3 通信模式364.6 服务的应用364.6.1 服务应用的相关工具364.6.2 流程服务功能374.6.3 统一操作界面384.6.4 多渠道支持384.7 服务的开发394.8 服务质量属性404.8.1 安全性404.8.2 可靠传输424.8.3 事务性424.9 优势与适用性434.10 实施中需要考虑的问题44第五章 基于SOA的数据仓库实例455.1 传
4、统分布式方案的缺陷455.2 基于SOA的数据仓库实现价值465.3 基于SOA的数据仓库设计475.3.1 系统总体架构设计475.3.2 系统用例分析485.3.3 系统功能结构设计495.4 基于SOA的数据仓库服务包装规范505.5 系统总体结构设计515.5.1 WEB服务层525.5.2 应用服务层535.5.3 数据库服务层535.6 系统关键技术与实现方案535.6.1 数据交换标准制定535.6.2 服务的描述545.6.3 服务发布与撤销545.6.4 服务转换器设计555.7 一次服务请求实例56前 言随着数据仓库理论与技术的发展,越来越多的大中型企业或组织都构建了数据仓
5、库系统,这些系统整合企业的历史数据,为企业制定决策提供了依据。但是,随着企业的发展和数据仓库系统的广泛应用,传统数据仓库的缺陷也开始显现,企业信息系统越来越臃肿,信息系统不断的重复建设使得企业的运营成本越来越高,企业的信息化建设渐渐成为企业的噩梦。面向服务的体系结构(service-oriented architecture,SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。SOA 是
6、一种IT体系结构样式,支持将您的业务作为链接服务或可重复业务任务进行集成,可在需要时通过网络访问这些服务和任务。这个网络可能完全包含在您的公司总部内,也可能分散于各地且采用不同的技术,通过对来自纽约、伦敦和香港的服务进行组合,可让最终用户感觉似乎这些服务就安装在本地桌面上一样。需要时,这些服务可以将自己组装为按需应用程序即相互连接的服务提供者和使用者集合,彼此结合以完成特定业务任务,使您的业务能够适应不断变化的情况和需求,在有些情况下,甚至不需要人工干预。从技术角度而言,SOA带来了“松散耦合”的应用程序组件,在此类组件中,代码不一定绑定到某个特定的数据库(甚至不一定绑定到特定的基础设施)。正
7、是得益于这个松散耦合特性,才使得能够将服务组合为各种应用程序。这样还大幅度提高了代码重用率,可以在增加功能的同时减少工作量。由于服务和访问服务的客户机并未彼此绑定,因此可以完全替换用于处理订单的服务,下订单的客户机-服务将永远不会知道这个更改。所有交互都是基于“服务契约”进行的;服务契约用于定义服务提供者和客户机之间的交互。通常,您将通过创建“基于消息的”系统来实现此目标。第一章 概述1.1 术语l SOA:Service Oriented Architecture,面向服务的体系架构l WSDL:Web Service Definition Language,Web服务描述定义语言l SOA
8、P:Simple Object Access Protocol,简单对象访问协议l UDDI:Universal Description Discovery and Integration,统一描述发现和集成l BPEL:Business Process Execution Language,业务流程执行语言l 服务服务是SOA 系统的基本元素,以明确且与实现无关的标准化接口完成业务功能定义,服务可在不同业务过程中被重复使用,而且具体的服务实现不依赖特定实现语言与工具。l 资源这里的资源指业务系统中所涉及到的企业、公众、政府部门和组织间存在的可用于业务处理的数据、信息、知识以及软硬件产品等。l
9、 连通服务连通又称服务总线,是面向服务架构的骨干,在完成服务的接入,服务间的通信和交互基础上,还提供安全性、可靠性、高性能的服务能力保障。连通服务的一个典型实现就是企业服务总线(ESB)。l 协作服务协作服务是连通服务的一个重要补充,主要通过WebServices 方式实现服务之间以更松散耦合方式进行通信和交互,可以简单认为其就是整个服务通信和交互环节中的WebServices网关。协作服务也提供安全性、可靠性、高性能的服务能力。l 流程服务流程服务支持复杂业务流程的设计,运行和监控管理。业务流程通过将若干服务按流程方式组织定义来实现,支持短时间运行的自动流程和可能长时间运行的有人工介入的流程
10、。1.2 为什么需要SOASOA提供了一种构建IT组织的标准和方法,通过建立可组合、可重用的服务体系来减少IT 业务冗余,并加快项目开发的进程。SOA 允许一个企业高效地平衡现有的资源和财产,这种体系能够使得IT 部门效率更高、开发周期更短、项目分发更快,在帮助IT技术和业务整合方面有着深远的意义,它可以:l 缩小业务和技术的鸿沟以业务为中心SOA 改变了以往以技术为中心的信息系统建设模式,使得IT 技术重新回到业务支撑的角色。IT 技术的目标是为业务、应用服务,而不是IT 技术本身的发展。业务人员可以像组装硬件一样从业务角度即时构造应用,从而缩小业务和技术的鸿沟。l 软件资源的共享与重用SO
11、A提供了一种把原有的组件按一定的标准封装为具有文档形式接口描述的服务,从而使服务的使用者和服务之间是一种松耦合关系。这样,一方面可以把遗留系统封装为服务加以复用,提高了投资回报率;另一方面,可以直接调用外部服务提供商提供的服务从而起到复用的作用。l 应用的随需扩展灵活性和敏捷性SOA的松耦合特性给应用带来了极大的灵活性。服务使用者和服务提供者在保持接口契约一致性的情况下,可以独立演化。基于SOA 的应用可以看成是一组服务以及服务之间松散耦合的集合。因此,一方面新的服务可以很容易地加入这个松散集合,另一方面也可以根据业务需求重新编排集合内的服务,以生成新的复合服务。因此基于SOA的应用具有易于改
12、变、易于扩展的特点,从而支持了业务的快速反应和敏捷性。总之,面向服务架构(SOA)试图将网络上需要共享的各种资源统一以服务的形式进行封装和接入,让它们在物理上保持分布自治的同时实现以“虚拟信息中心”为基础的逻辑上的一体化管理,以透明的方式进行资源的优化选取、按需中介和有效访问,并能够支持用户主动参与应用配置。SOA 主要通过复用性、灵活性和共享性从技术上支持上述目标。SOA 以服务为基本单元,更加贴近于企业的商业活动,业务建模和流程编排的复杂度会有效降低,重用性也会有效提高。因此,采用SOA,可以让IT更加关注于业务流程而非底层IT基础结构,从而获得竞争优势的更高级别的应用程序开发架构。1.3
13、 SOA 的主要应用场景SOA的主要应用场景有:l 跨部门资产联合使用l 组织内部或组织之间应用整合需要,可以适应未来变化,实现对已有资产的保护,简化开发l 互联网环境下虚拟企业的建立,可以利用互联网上的服务进行组合提供新的业务服务l 为用户提供多渠道支持服务,服务接口的统一,有利于与服务展现方式和服务渠道的多样化1.4 什么是SOAOASIS标准组织在SOA参考模型(RM)中对SOA的定义为:SOA(Service Oriented Architecture)是一种软件体系结构范型,可以组织和使用处于不同所有者控制下的分布式功能。对SOA的理解多种多样,从技术角度看,SOA就是一种体系架构,
14、它描述了一种IT基础设施,使得不同的业务服务可以相互交换数据,参与业务流程,通过灵活的互相协作方式来完成具体的业务操作。这些业务服务独立于编程语言,独立于实现方法,独立于运行环境。1.5 SOA 的特点1.5.1 重点关注服务SOA支持面向服务的开发方法,是对前续的面向过程、面向消息、面向数据库和面向对象开发方法的补充。服务从更高抽象层次上定义,直接与业务相对应,且其实现可采用面向过程、面向消息、面向数据库和面向对象等不同开发方法。与面向对象的调用接口相比,服务一般定义较粗粒度的接口,会接收更多的数据,消耗更多的计算资源。服务一般是用来解决应用间互操作问题,以及将服务组合成新应用或新的应用系统
15、,而不是为应用创建具体的业务逻辑。通过SOA,围绕服务构建IT 系统,有利于IT 系统更靠近实际业务要求,使IT 系统更容易适应业务变化的要求,另外,对已有应用系统,通过服务化封装,可以使这些系统得到更好的重用,能有效保护对已有应用系统建设的投资。1.5.2 松耦合松耦合是软件设计中一个重要概念,SOA 强调服务间的松耦合。在SOA 中松耦合包括以下几个方面:l 接口松耦合接口耦合是指服务请求者与服务提供者之间的耦合。度量的是请求者与服务提供者的依赖性。接口松耦合强调服务请求者仅需要根据已发布的服务契约和服务水平协议(或称服务等级协议)就可以请求一个服务,任何时候服务请求者都不需要了解服务提供
16、者对内部实现的信息。即服务接口封装了所有的实现细节,使服务请求者看不到这些实现细节。l 技术松耦合技术耦合度量的是服务对特定技术,产品或开发环境的依赖程度。技术松耦合强调服务请求者和服务提供者的实现和运行不需要依赖与特定的某种技术,或某个厂家的解决方案或产品,从而减少对某个厂商的依赖。在SOA 系统中服务请求者和服务提供者可以使用不同技术实现,可以在不同厂商的环境中运行。l 流程松耦合流程松耦合度量的是服务与特定业务流程的依赖程度。强调服务不应与具体的业务流程相关,以便能够被重用于多种不同的业务流程与应用。这一点强调的是服务的可重用性,在SOA 系统中对业务服务的合理规划,使得一个业务服务可以
17、在多个业务流程中得到复用,并且随着业务要求的改变,一个服务可以在变化后的新的业务流程中能够得到继续使用。1.5.3 重构的灵活性在SOA系统建设中,基本的单位是实现业务功能的服务,而不是实现业务逻辑的对象,过程,函数等较小的技术单位。服务与实际业务功能相关,具有明确的接口。这些服务可在不同的业务流程中得到重用,提高了服务的价值;其次在使用中只需按其接口要求进行访问,屏蔽服务实现细节,服务实现的修改不会影响到服务访问方的逻辑,提高了业务流程的适应性;另外,一旦业务流程变更,仅需对服务进行重新编排,并不修改服务本身,提高了业务流程实现的灵活性。重构的灵活性,不仅可以使业务服务可以有更好的重用性,也
18、使得业务流程更容易重构,使IT系统具有了更好的灵活性,可以快速面对变化的市场需求。1.5.4 对标准的支持为了强调互操作性,在SOA系统中,服务需要尽量符合开放标准。与服务相关的技术几乎都存在相应标准,通过对标准的使用可以得到众多好处,包括:l 减少对特定厂商的依赖;l 为服务请求者增加了使用不同服务提供者的机会;l 为服务提供者增加了被更多服务请求者使用的机会;l 增加了使用开放源代码的标准实现,以及参与这些实现的开发机会;在SOA系统中,除强调需要遵守技术标准(如SOAP,WSDL,UDDI 和WS-*)外,服务层的数据模型和流程模型也有需尽可能基于一些成熟的业务领域标准或纵向的行业标准。
19、1.6 SOA 带来的好处按SOA方法构建应用系统,可获得技术、业务层面的不同优势。在技术层面带来的好处有:l 开发过程更有效,缩短开发周期l 更利于重用l 简化维护l 增量采纳,在统一的规划下,系统可以通过试点后分步骤建立l 流畅的演进,可以逐步改进业务目标在业务层面带来的好处有:l 增强业务机动性,有更好敏捷性l 更好的配合业务,可以优化业务框架l 改善客户满意度l 提高现有IT资产的投资回报率l 降低集成成本,节省费用l 降低对厂商的依赖和降低转换成本,获得技术的独立性第二章 技术资源2.1 研究机构正文为宋体小四,段落缩进2字符,1.5倍行距2.2 国内外厂商正文为宋体小四,段落缩进2
20、字符,1.5倍行距2.3 国内外网站、会议与技术刊物正文为宋体小四,段落缩进2字符,1.5倍行距2.4 国内外标准2.4.1 标准组织与SOA技术相关的主要标准化组织有:l W3C(World Wide Web Consortium,万维网联盟)该标注组织主要进行Web标准(HTTP、HTML、XML等)的制定工作。制定的与SOA 有关的技术标准主要有SOAP、WSDL、WS-Choreography、WS-Addressing、WS-Policy、XML-Encryption和XML-Signature。l OASIS(Organization for the Advancement of
21、Structured Information Standards,结构化信息标准促进组织)该标准组织成立时主要关注SGML(Structured Generic Markup Language)间的互操作。当前SOA相关技术标准的制定和推进工作是该组织的一个主要工作方向,相关技术标准有UDDI、WS-Security、WS-BPEL、WS-Composite Application Framework、WS-Notification 、WS-ReliableMessage 、WS-Policy 、WS-RemotePortlets 、WS-Distributed Management 和WS-
22、Resuore Framework。l WS-I(Web Services Interoperability,Web服务互操作组织)该组织主要工作是确保各种Web服务实现的互操作性,该组织不直接定义标准,主要工作是提出一些标准应用的概要(Profile),以指导Web服务标准的应用。2.4.2 标准分类随着近几年SOA概念的推广及相关技术标准的发展,SOA逐渐为众多的用户所接受,并在电子政务及企业应用的建设中逐步得到应用。但是,面对众多纷繁复杂的SOA相关技术标准,IT企业在开发SOA相关软件产品及用户实施SOA进行选择时,往往分不清楚哪些技术标准是他们所需要的,而且相当部分的SOA技术标准的
23、定位,有一定的重合。因此,选择适合的SOA相关技术标准,成为IT企业和实施SOA用户的面临的难题。下面,简单介绍一下部分SOA相关技术标准,并作简单分析。l SOA相关技术标准分类 标准与规范基本相似,但略微不同,规范是标准的建议文档。标准一 般是由业界公认的标准化组织制定和发布,而规范多为厂商或非标准化组织发布。本文不对它们进行区分,统一称为标准。SOA相关技术标准有多种分类方式,本 文介绍两种。n 分类方法一一种方法是将其分成三类,即XML标准集、Web服务标准集和SOA参考模型: XML标准集主要包括两类,一是基于纯文本的编码技术,XML信息集、XML Schema、XML Query和
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SOA 技术研究 报告

链接地址:https://www.31ppt.com/p-2397634.html