【毕业学位论文】(Word原稿)高性能SOAP引擎关键技术研究与实现-计算机软件与理论_第1页
【毕业学位论文】(Word原稿)高性能SOAP引擎关键技术研究与实现-计算机软件与理论_第2页
【毕业学位论文】(Word原稿)高性能SOAP引擎关键技术研究与实现-计算机软件与理论_第3页
【毕业学位论文】(Word原稿)高性能SOAP引擎关键技术研究与实现-计算机软件与理论_第4页
【毕业学位论文】(Word原稿)高性能SOAP引擎关键技术研究与实现-计算机软件与理论_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

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

文档简介

分类号 密级 编号 中国科学院研究生院 硕士学位论文 高性能 指导教师 黄涛 研究员 中国科学院软件研究所 申请学位级别 硕士 学科专业名称 计算机软件与理论 论文提交 日期 论文答辩日期 培养单位 中国科学院软件研究所 学位授予单位 中国科学院研究生院 答辩委员会主席 张莉 中国科学院软件研究所硕士研究生学位 论文 中文摘要 高性能 花 磊 导师:黄涛 研究员 摘 要 务具有松散耦合,互操行 性 强和平台无关等特点, 是 面向服务体系架构 主要实现方式。 基于 议是 务的核心协议 之一 ,它是 独立于特定编程 语言和平台 的可扩展消息处理框架 , 使 得 务具有良好的互操作性和可扩展 性。但是 议 的 性能限制了 议和 务在 高性能分布式计算环境中的应用。 擎是 支持 议的 务运行支撑环境, 擎的性能直接决定了 务的性能。 本文首先 通过 分析分布式 组件 交 互模型的演化,指出 基于消息的 松耦合交互模型是 其 发展 方向,但 同时会带来性能的下降。 务是 支持这种 交互模型的典型 代表 , 其 网络通信和数据模型映射是影响 务性能的关键因素。 在分析结果的基础上, 本文提出了一种基于 式 的网络通信 模型 ,通过基于事件驱动的 I/O 和分治原则,有效 地 提高 了 擎处理网络通信的性能和可扩展性。 此外 , 论文 提出了一种新的数据模型映射机制动态提前绑定,通过在运行时动态产生驱动数据模型映射的模板来避免耗时的 射操作, 由模板实例实现 据对象和 据对象间的快速映射。 论文 将 基于 式的网络通信模型和动态提前绑定技术 应用于自主开发的 新一代 擎 测试数据 表明 平均性能比 高 100以上。 关键词 : 务 , 擎 , 数据模 型映射 , 动态提前绑定 中国科学院软件研究所硕士研究生学位论文 is in is in an at of to in is of of of is to is of on a by a of to by is is by by by MT a 00% .2 国科学院软件研究所硕士研究生学位论文 目录 目录 第一章 绪论 .究背景 . 软件体系架构的发展和面向服务体系架构 . 性能问题 . 高性能 擎是高性能服务计算的关键之一 .文工作 .文组织 .二章 务与 擎技术概述 .向服务的体系架构 . 定义 . 架构 .务 . 务的定义 . 务的协议栈 . 务的特征 .务基础运行支撑系统 擎 . 议 . 擎的功能 .性能 擎的相关研究 . 议的性能分析 . 制在 擎中的应用 . 11 擎的数据模型映射研究 . 11 进制编码的 议研究 .三章 分布式交互模型演化及其性能分析 .布式交互模型 . 面向过程的交互模型 . 面向对象的交互模型 . 面向服务的交互模型 .布式交互模型性能分析与比较 . 分布式交互模型的比较 . 基于 务交互性能分析 .四章 擎的高性能通信技术 .于传统网络通信的 擎通信设计 .国科学院软件研究所硕士研究生学位论文 高性能 擎关键技术研究与实现 性能网络通信的若干设计原则 . 分治原则 . 基于事件驱动的 I/O . 大粒度的 I/O 操作 .种基于 式的通信模型 . 式 . 基于 式的单线程通信 . 基于 式的多线程通信 . 基于 式的多线程通信的一个改进 .五章 擎的高性能数据模型映射 .据模型映射 .种新型 务数据模型映射机制 . 现有的 务数据模型映射机制 . 动态提前绑定 .于拉模式的 析 .据映射模板 . 基于上下文无关文法刻画数据映射模板 . 基于下推自动机实现数据映射模板 .六章 高性能 擎 设计与实现 .计目 标 .系结构 . 概念视图 . 组件图 . 组件交互图 .式在 的设计与实现 . . 基于 现 式 . 的设计与实现 .性能分析 .七章 结束语 .文的主要贡献 .来工作 .考文献 .表文章 . 谢 . .国科学院软件研究所硕士研究生学位论文 第一章 绪论 1 第一章 绪论 本章 介绍研究背景、论文工作和论文组织。 究背景 件体系 架构 的发展 和 面向服务体系架构 件体系架构的发展经历了面向过程体系架构、面向对象体系架构和面向服务的体系架构 个阶段。 软件体系架构是随着开发方法、软件规模和软件交互模式的发展而不断演化。 面向 过程的程序设计是一种自上而下的设计方法,其特征是以函数为中心,用函数来作为划分程序的基本单位,数据在过程式设计中往往处于从属的位置。 面向 过程 的程序方法 的优点是易于理解和掌握,这种 从顶向下 逐步 细化问题的设计方法和大多数人的思维方式接近。 但随着软件规模的日益扩大,过程式程序设计的复杂度、调试难度等急剧增大,已不符合软件开发的需求。 和 面向过程的程序方法不同, 面向对象是一种自下而上的程序设计方法 ,其特征是以 封 装了数据和行为的类为中心 。 面向对象设计自下而上的特性,允许开发者从问题的局部开始,在开发过程中逐步加深对系统的理解。这些新的理解以及开发中遇到的需求变化,都会再作用到系统开发本身,形成一种螺旋式的开发方式。 面向对象程序设计方法是软件开发方法学上的突破,它极大了提高了软件开发的效率。 软件规模的日 益扩大是面向过程体系架构到面向对象体系架构的演化驱动力。 随需而变 是当今业务的显著特点, 要求任何 织都必须具备适应业务快速变化的能力, 同时 要求组织的 础架构能够快速的响应变化以支持新的业务模式和需求。只有这样,组织才能适应现实世界中的完全自动化的、复杂的电子商务。 随需而变的特点要求 础设施间实现松散耦合的交互模式,松散耦合的交互模式将使异构平台间的交互更易实现,开发者可以更加专注具体的实现逻辑。目前 ,松散耦合、平台和语言无关的交互模式 已经 成为软件 体系架构 发展的方向和驱动力。 近年来, 面向服务的 体系 架构 到学术界和工业界的广泛关注 , 和面向 过程和面向 对象的体系架构不同, 应中国科学院 软件研究所硕士研究生学位论文 高性能 擎关键技术研究与实现 2 用程序的不同功能单元称为 服务 ,并将 这些服务 通过 之间定义良好的接口和契约联系起来 ,从而有效的实现服务之间的松耦合。 的服务封装了 异构平台上特定计算资源的实现细节,使之以一种平台和语言无关的方式表现出来,符合上文所提出的松散耦合、平台和语言无关的特性。 本文的第二章将详细介绍面向服务体系架构 特点。 性能问题 松散耦合、平台与语言无关特性, 使其在分布式计算领域得到广泛使用 。 早 由 司于 1996 年提出 ,早期人们曾用 构建系架构,但 广泛采用 却是由于近年来 务的兴起和普及。务提供了一套基于 的服务传输、描述、查找机制,包括 简单对象传输 协议 、 言 、 现和集成 等, 具有平台无关、互操作性强的特点,很好的解决了异构平台环境的互操作问题。 务的特点符合 系架构的理念,目前作为 系架构的主要实现方式被广泛采 用。 分布式系统的性能和消息传输的格式密切相关,传统的高性能通信系统采用的 客户机服务器通信系统采用的 供了高性能的通信机制,但要求通信双方遵循特定的通讯协议,这导致了很高的系统耦合度;分布式组件模型的消息格式,如 用的序列化对象,降低了系统的耦合度,但带来了序列化和反序列化对象的开销; 务采用 为消息传输的格式,实现了异构平台之间的松耦合,但基于 本的 息解析、 据对象和平台相关数据对象之间的映射都降低了 务的性能。 随着 务 在商 业计算领域中的广泛应用,人们对其性能包括响应时间、传输速度等提出了更高的要求。但作为 主流实现方式, 务与其它分布式计算模型如 相比,在性能上有相当的差距,这影响了它在高性能计算环境中的应用。因此,高性能 务,正日益成为服务体系架构研究中的一个重要问题。 性能 擎是高性能 服务计算 的 关键 之一 擎是 务运行支撑环境,其主要功能包括 务的网络通信、数据模型映射和 务的运行时管理等, 务的性能实际上取决于擎的性能。 台是目前使用最为广泛的开放 平台,当前高性能 务的研究都集中于 台上高性能 擎的研究上,包括 议的性能分析、制在 擎上的应用、 擎的数据模型映射研究和二进制编码的 议研究等。其中, 议的性能分析研究指出网络通信和数据模型映射是影响 擎性能的关键因素。为提高 擎性能,大量研究中国科学院软件研究所硕士研究生学位论文 第一章 绪论 3 都集中在利用 制减少 息处理的步骤,从而提高 息处理的整体性能 。 制是提高系统性能的一种通用手段,将 制移植到擎实现中,是高性能 擎研究的一种思路。 本文在第二章将详细介绍高性能 擎的相关研究。 本文对 务的性能进行定量分析,找出影响 擎性能的关键因素,并通过对这些影响因素进行优化 来 提高 擎性能。 本文专注于影响擎性能的两个关键因素:网络通信和数据模型映射。在网络通信的研究工作中,本文通过分析指出基于阻塞 I/O 的传统网络通信的不足,并 提出了一种基于 式的 高效 网络通信模式;在数据模型映射的研究中,本文通过实验指出 射的频繁使用 是 台上数据模型映射性能低下的根本原因,并提出了一种“动态提前绑定”的数据模型映射机制, 通过运行时动态生成驱动数据模型的模板避免 射,从而提高数据模型映射性能。 本文提出的基于 式的网络通信模式和基于动态提前绑定的数据模型映射,在软件所软件工程中心自主开发的 擎 现,通过与开源 擎 的对比实验, 性能提高在100%以上。 文工作 论文工作主要围绕 高性能 擎 中以下几个方面的问题展开 研究 : (1) 分布式 交互模型 的 演化和 擎 性能分析 分布式交互 模型的性能和 网络 通信 协议、消息传输格式 、分布式 组件所依赖的 平台语言 特性 等因素相关。 本文 以开源 擎 例,通过实验 分析 务 的性能,从中发现影响 务性能 的关键因素。本文 将 对影响 务性能的关键因素进行优化,在此基础上实现高性能的 擎。 (2) 擎的 高性能 通信 技术 研究 擎的 性能和 其 网络 通信 性能 密切相关 ,通常的 擎实现采用阻塞式 I/O, 这影响了 擎的性能和可扩 展性。本文提出了高性能通信的若干原则, 采用基于 式的高效通信模式,并通过事件驱动 I/O 实现式。 (3) 擎的 高性能 数据模型转换 研究 分布式组件 的性能和消息传输的格式密切相关, 务采用 为消息传输的格式,实现了异构平台之间的松耦合,但基于 本的 息解析、 据对象和平台相关数据对象的转换都降低了 务的性能。 本中国科学院 软件研究所硕士研究生学位论文 高性能 擎关键技术研究与实现 4 文提出了一种“动态提前绑定”的数据模型映射 机制 , 并通过数据映射模板 (4) 高性能 擎 设计与实现 目前,开源组织 为一种开源 擎被广泛使用, 现了较灵活的链状处理结构 ,并通过 务器处理网络 通信 。但由于其 设计时并未重视性能问题, 性能指标并不符合高性能计算环境的需求。 软件所软件工程中心开发的 擎 , 擎, 它 使用基于拉模式的 析技术、基于动态模板驱动的数据模型映射技术, 和 基于 式的网络通信模式 等技术 , 本文将详细介绍 设计与实现。 文组织 论文的后续章节按以下方式组织: 第二 章 将介绍 务与 擎相关技术。首先将介绍面向服务的体系架构 后介绍 主要实现方式 定义、协议栈和特征,最后介绍 擎的功能和高性能 擎的相关 研究与 技术 发展 。 第三 章 通过对分布式 交互模型 发展过程的分析, 指出分布式交互模型的演化趋势。并 以开源 擎为例, 分析 影响 务 性能的因素以 确定 其 瓶颈。 第四章 指出传统 擎网络通信实现的 不足,并 提 出高性能网络通信的若干设计原则。 同时,介绍了 基于事件驱动的 式,并 设计了几种 基于式的网络通信模型。 第 五 章 提出了动态提前绑定的数据模型映射机制,并介绍动态提前绑定机制的一种实现数据映射模板 同时,将详细介绍 概念模型和实现模型。 第六章介绍 一种高性能 擎 设计与实现 ,并通过和对比实验分析其性能提高 。 最后,第 七 章对全文工作进行总结, 列举了论文工作的主要贡献,并且对进一步研究提出展望。中国科学院软件研究所硕士研究生学位论文 第二章 务与 擎技术概述 5 第二章 与 述 本章 主要介绍 务与 擎相关技术,并 给出 高性能 擎的 研究 现状 。 向服务的体系架构 定义 面向服务的体系架构 简称, 它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。 - 服务定义为: 服务提供者完成一组工作,为服务使用者交付所需的最终结果。最终结果通常会使使用者的状态发生变化,但也可能使提供者的状态改变,或者双方都产生变化 。” 义为: 本质上是服务的集合。服务间彼此通信,这种通信可能是简单的数据传送,也可能是两个或更多的服务协调进行某些活动。服务间需要某些方法进行连接。所谓服务就是精确定义、封装完善、独立于其他服务所处环境和状态的函数。 ” 将 述为: “ 客户端 /服务器的软件设计方法,一项应用由软件服务和软件服务使用者组成 大多数通用的客户端 /服务器模型的不同之处,在于它着重强调软件组件的松散耦合,并使用独立的标准接口 。” 为:“面向服务的 体系架构 应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来 , 使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互 ” 为:“ 一个基于标准的组织和设计方法,它利用一系列网络共享服务,使 更紧密地服务于业务流程。通过采用能隐藏潜在技术复杂性的标准界面, 提高 产的重用率,从而加快了开发并更加可靠地交付新的增强后的业务服务。 ” 虽然不同厂商 和组织 对 着不同的理解,但仍可以从上述的定义中看到几个关键特性:一种粗粒度、松 耦合服务架构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型 。 本文认为, 一种松散耦合、语言和协议无关、基于公认标准的分布式中国科学院软件研究所硕士研究生学位论文 高性能 擎关键技术研究与实现 6 计算范型,它将互联网上的计算资源以服务的形式进行包装、描述、发布和调用 。 架构 图 面向服务的体系架构 图 图 示为面向服务的体系架构图, 面向服务的 体系架构 以 服务作为基本的构造单元,支持异构环境下分布式应用的快速、低成本的组合式开 发。面向服务计算的理想境界是形成一个服务协作的世界。 面向服务的体系架构包括四 个参与者: 中, 对 源的一种包装 , 向外提供了 源的一种统一视图,屏蔽了 源的内部差异。 责进行服务的注册和发布,并提供服务的查找接口。 服务提供者, 将互联网上的 源以服务的形式包装,并向 布。 服务请求者,通过 找服务描述信息,并向 行服务的调用。 源抽象为服务后,屏蔽了语言和平台的差异,解决了异构平台的交互问题,是软件体系架构的重大进步。 早 由 司于 1996 年提出 ,早期人们曾用 构建 广泛采用 却是由于近年来 务的兴起和普及。 务提供了一套基于 服务传输、描述、查 找机制,包括 简单对象 传输 协议务描述 语言 务的 发现和集成 , 具有平台中国科学院软件研究所硕士研究生学位论文 第二章 务与 擎技术概述 7 无关、互操作性强的特点,很好的解决了异构平台环境的互操作问题。 务的特点符合 系架构的理念,目前作为 系架构的主要实现方式被广泛采用。 务的定义 一个 务是平台无关的、松耦合、自包含、可编程并且基于 应用, 务 以 形式描述、发布、发现、协调和配置,从而实现高互操作性的分布式应用程序。 务将 源 包装成一种统一的计算模型,以: 完成一个功能 进行 一个商业事务 解决一个复杂问题 将它们的特点以可编程的方式,用标准的基于 语言和协议描 可以通过自描述的接口进行调用 务的协议栈 图 务的协议栈 图 示为 务的协议栈, 务的协议栈分为网络通讯、消息框架、服务描述、服务 服务组合 五个层次 。 网络 传输 层: 务不和特定的网络协议绑定,网络协议层可以是应用层协议,也可以是 网络层协议。 议绑定。 消息层:该层定义 务的消息处理框架, 议是 务中使用最广泛的消息处理框架,一般的 务中间件也称为 擎。除了 议以外,也有一些 基于 二进制的消息处理框架。 中国科学院软件研究所硕士研究生学位论文 高性能 擎关键技术研究与实现 8 服务描述 层: 基于 务描述语言 , 提供功能性 描述 和非功能性的描述 接口 。功能性描述包括 务 接口的特性,包括可用的操作、操作参数、数据类型和访问协议, 用户 可以通过公开的描述信息访问 定到 务的提 供者,并且调用其服务。 同时, 供 非功能性描述 的扩展接口,用户可以描述 包括服务可用性、可靠性、可扩展性、安全、认证、(事务)集成 等非功能性特性 。 : 务的描述语言 身 并未定义服务的 性,务的 性是有 议族提供的,包括 。 服务组合层:以上四层均描述了单个服务的信息,服务组合层提供了对复合服务的支持,目前广泛使用的服务复合语言是 务的特征 务 基于 协议栈使

温馨提示

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

评论

0/150

提交评论