已阅读5页,还剩73页未读, 继续免费阅读
建设银行业务系统性能测试通用模拟器的设计与实现优秀毕业论文 参考文献 可复制黏贴.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
代号 分 类 号 学号 密级 代号 分 类 号 学号 密级 10701 tp311 公开公开 0777960402 u d c编号编号 题题(中、英文)(中、英文)目目建设银行业务系统性能测试通用模拟器的设计与实现建设银行业务系统性能测试通用模拟器的设计与实现 the design and fulfillment of general performance test simulator in banking business system in china construction bank 作者姓名作者姓名高洁 高洁 刘西洋 教授 刘西洋 教授 计算机技术 计算机技术 提交论文日期提交论文日期二一二年六月二一二年六月 贾钦荣 高级工程师 贾钦荣 高级工程师 企业指导教师姓名职称企业指导教师姓名职称工程领域工程领域 学校指导教师姓名职称学校指导教师姓名职称 西安电子科技大学西安电子科技大学 学位论文独创性(或创新性)声明学位论文独创性(或创新性)声明 秉承学校严谨的学风和优良的科学道德, 本人声明所呈交的论文是我个人在 导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标 注和致谢中所罗列的内容以外, 论文中不包含其他人已经发表或撰写过的研究成 果; 也不包含为获得西安电子科技大学或其它教育机构的学位或证书而使用过的 材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中做了明确的说 明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切的法律责任。 本人签名: 日期: 西安电子科技大学西安电子科技大学 关于论文使用授权的说明关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。 学校有权保 留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内 容,可以允许采用影印、缩印或其它复制手段保存论文。同时本人保证,毕业后 结合学位论文研究课题再撰写的文章一律署名单位为西安电子科技大学。 (保密的论文在解密后遵守此规定) 本学位论文属于保密,在 年解密后适用本授权书。 本人签名: 日期: 导师签名: 日期: 摘要 随着 it 技术的不断发展,银行的总体架构朝着面向服务的体系结构发展。越 来越多的系统采用开放式的服务接口通过企业信息总线向外提供服务。随着银行 系统数量的增加,系统采用的软硬件平台种类也在不断增加,系统进行测试的需 求也越来越多。但在测试的过程中被测的银行系统过多的依赖后端系统是测试存 在的最大问题,而众多后端系统也存在各种类型的报文格式。因此,测试时需要 针对各个后台系统分别编写报文组包程序,以实现被测系统与对应的后端系统的 顺利通信。这就会造成开发周期长、代码复用程度底、维护性差等问题,从而加 重了开发成本,给银行的测试工作带来了极大的不方便。 本文从银行系统性能测试的实际需要出发,研究分析了性能测试的过程和目 前常用的基本方法,深入分析了其中存在的问题和不足。提出了系统性能测试中 的一种性能测试模拟器,以及其中的报文组包模块和报文组包方法。通过将通用 报文按照多种后端系统的报文样式定义进行组包得到后端系统的不同类型的响应 报文,实现了可以仿真与被测系统对应的多种后端系统的性能测试模拟器,缩短 了开发测试的周期,提高了代码的复用度,从而节约了银行在软件开发测试中的 成本。 该性能测试模拟器已成功应用在建设银行软件开发中心,给银行软件测试工 作带来了极大的方便。 关键词:性能测试 模拟器 报文组包 关键词:性能测试 模拟器 报文组包 abstract with the development of it, the general structure of bank has advanced towards service-oriented architecture (soa). more and more systems employ open service interface via the information lane of enterprise to provide service outside. with the increasing number of banking systems, the kinds of software and hardware platform, which the system adopts, have been growing sustainably, and more need of system test becomes apparent. however, there exists the biggest problem that the tested bank system over-depends on background system during the testing process, so many background systems exist various kinds of packet format. so the program of packet combination should be written according to each background system. that will result in the long period of research and development, the low rate of code reuse and the bad performance of maintenance etc., all of which increase the cost of development and bring troubles to the bank test. this article focuses on the practical need of performance test of bank system and analyses the process of performance test and recent regular basic method, gives a deep insight of problems and deficiencies existing in it. the article suggests a simulator of performance test, and the module of packet combination and the method of packet combination. different kinds of echo packets in background system are gained through combining the general packets according to the packet format definition of multi-background-system, which realizes the simulator of performance test with multi-background-system, which can correspond to the tested system. by using this simulator, the period of research and development is shortened, the rate of code reuse is improved and moreover, the cost of the test of software development is reduced. this performance test simulator is applied to the software development in china construction bank successfully and brings the great convenience to bank software test. key words: performance test simulator packet combination 目录 第一章 绪论 . 1 1.1 课题背景及意义. 1 1.2 国内外研究现状. 2 1.2.1 对软件性能的认识. 2 1.2.2 软件性能测试的过程. 3 1.2.3 常用方法存在的问题和不足. 5 1.3 论文的主要研究内容. 5 1.4 论文的组织结构. 5 第二章 性能测试模拟器系统相关技术概述与研究 . 7 2.1 xml 技术 . 7 2.2 集群技术分类及应用. 9 2.2.1 集群技术的分类. 9 2.2.2 集群系统的应用. 10 2.3 web 设计与 springmvc 技术 . 11 2.3.1 mvc 设计模式. 11 2.3.2 mvc 与 web 框架. 14 2.4 本章小结. 16 第三章 性能测试模拟器系统的总体设计 . 17 3.1 系统总体需求. 17 3.2 系统总体架构设计. 18 3.2.1 适配器. 19 3.2.2 核心层. 20 3.2.3 管理控制台. 20 3.2.4 统计报表. 20 3.2.5 安全服务. 20 3.3 系统软硬件平台. 21 3.3.1 硬件环境. 21 3.3.2 软件环境. 21 3.4 系统部署与网络拓扑. 21 3.4.1 单机支持一个或者多个测试. 22 3.4.2 多机支持一个或者多个测试. 22 3.5 本章小结. 23 第四章 性能测试模拟器系统的详细设计与实现 . 25 4.1 适配器层 .25 4.1.1 适配器层总体框架.25 4.1.2 适配器层工作流程.26 4.1.3 适配器内部接口及实现.27 4.2 核心层 .30 4.2.1 核心层总体框架.30 4.2.2 核心层工作流程.31 4.2.3 核心层内部接口及实现.35 4.3 管理控制台 .38 4.3.1 管理控制台总体架构.39 4.3.2 管理控制台功能划分.40 4.3.3 核心实例类.40 4.3.4 控制层服务类.44 4.3.5 web 页面的展现.53 4.4 本章小结 .54 第五章 测试及验证.55 5.1 测试环境介绍 .55 5.2 测试方案 .56 5.2.1 eaih tuxedo 通路测试.56 5.2.2 eaih mq 通路测试.57 5.2.3 ccbs 中心前置通路测试.57 5.3 测试结果分析 .58 5.4 测试结论 .62 5.5 本章小结 .62 第六章 结束语.65 6.1 论文工作总结 .65 6.2 不足和展望 .65 致谢 .67 参考文献 .69 第一章 绪论 1 第一章 绪论 1.11.1 课题背景及意义 随着计算机技术和网络的不断发展与应用,软件性能的重要性也不断凸显, 在单机应用占主导地位的时代,软件性能基本上可以通过提升硬件配置来得以改 善,但在网络技术高速发展的今天,系统的结构变得非常复杂,包含有应用服务 器、数据库、网络等多个部分组成。整个应用系统的任何一部分都可能成为瓶颈, 而导致整个系统的性能低下,而难以满足用户的使用需要。系统用户数量急剧增 加,用户操作行为更为多样,使系统的性能变得难以控制,也更为客户所关注。 系统性能已经成为用户、系统维护人员、系统开发人员普遍关心的问题。 金融软件是为提供金融系统独特产品、 服务或成果所开发的工具和应用软件。 金融软件的开发、测试过程和其他领域项目的开发、测试过程是一致的。应用软 件投产前一般需要经过功能验收和性能测试,特别是目前企业的网络应用环境都 必须支持大量客户,网络体系架构中含各类应用环境且有不同供应商提供软件和 硬件产品,而这些性能问题都将会导致公司收益损失和形象的损坏。而做好性能 测试可以将这种损失产生的可能性降到最低。由此可见良好的性能测试将对金融 软件的持续、高效使用产生十分关键的作用。 建设银行的it系统庞大复杂多样, 涉及几乎业界可能的通讯协议和报文格式。 随着银行生产经营活动的不断扩大, it 测试部门日益面临大量的信息技术应用项 目的跨系统测试工作。在大型、跨系统性能测试时,为了准确定位性能问题,或 者考察关联系统异常对被测范围内系统的影响,需要经常采用性能测试模拟器对 被测系统周边的后端系统进行模拟或者隔离。 目前,由于项目组之间信息并不完全对称,每次测试都需要针对具体的被测 系统开发挡板或者修改挡板。而且,这些挡板的修改和维护均需要负责开发该程 序的项目组通过修改代码等方式进行。这大量增加了开发、维护挡板和项目组对 测试过程支持的时间和精力,也增加了测试项目管理的难度。 另外,目前已经开发的这些程序一般为简单的“挡板撞墙”程序,基本不具 备对后端系统特性的模拟功能,不能支持特殊的测试场景,难于达到特殊的测试 目的。而且,由于部分系统对“挡板”程序的反馈报文进行关键字段的动态校验, 然而,现有挡板无法满足此需求。其次,建设银行信息技术规划中各系统之间均 是松藕合方式连接, 使得各个项目开发的系统互相依赖, 从而使得测试互相影响, 单个应用系统的测试需要其他应用系统全面的支持配合。但由于设备和人员资源 的限制,导致测试覆盖面和测试有效性得到很大限制。测试过程中问题的定位排 建设银行业务系统性能测试通用模拟器的设计与实现 2 查、分析解决也需要关联项目组的全力协助。 基于以上分析和判断,根据保护投入,提高复用的原则,提出通过适配器来 屏蔽被模拟系统通讯协议和报文格式的差异。通过核心层实现模拟器通用功能复 用,构建一个性能测试模拟器。 1.21.2 国内外研究现状 1.2.1 对软件性能的认识 对一个系统而言,不同的对象对软件系统性能的关注是有着显著差异的。 从用户角度来看, 软件性能就是软件对用户操作的响应时间。 对用户来说, 当用户单击一个按钮、 发出一条指令或是在页面上单击一个链接, 从用户单击 开始到应用系统把本次操作的结果以用户能察觉的方式展现出来, 这个过程所 消耗的时间就是用户对软件的直观印象 1。 图 1.1 就是一个 web 系统为例的系 统响应时间。图中,响应时间(n1+n2+n3+n4)+(a1+a2+a3) 2。 图 1.1 web 系统响应时间示例 从管理员角度来看, 软件系统的性能不仅体现在系统的响应时间上, 还会 关注和系统状态相关限额信息。例如内存是否可用、cpu 使用率等。另外, 管理员还要关注系统的可扩展性, 处理并发能力如何, 系统的最大容量和系统 可能的瓶颈在哪里等 3。 从软件开发角度来看, 对性能的关注就更加深入了。 不仅包含了软件用户 和管理员关注的内容,还关注软件的架构、数据库、代码设计等方面对软件系 统的性能影响。 因此,软件性能测试而言,在不同层面所关注的内容有所不同:从用户角 度来说,表现为软件系统对用户操作的响应时间;在系统管理员层面,性能测 试不仅关注响应时间,还需关注系统可扩展性、并发性等指标;从软件开发人 员角度,不仅关注响应时间、系统可扩展性、并发性,还需对软件性能问题进 行定位,了解性能的制约因素和引起性能问题的关键原因。 第一章 绪论 3 1.2.2 软件性能测试的过程 “软件性能测试过程方法” 是对软件性能测试过程进行指导的方法论, 以 下是目前几种常用的性能测试过程方法。 1、 loadrunner 性能测试过程 loadrunner 将性能测试过程分为计划测试、测试设计、创建 vu 脚本、创建 测试场景、运行测试场景和分析结果 6 步骤 4。图 1.2 给出了这个过程。 图 1.2 loadrunner 性能测试过程 计划测试阶段主要进行测试需求收集、 典型场景的确定; 测试设计阶段主要 进行测试用例的设计; 创建 vu 脚本阶段主要根据设计的用例创建脚本; 创建测 试场景阶段主要进行测试场景的设计和配置, 包括监控指标的设定; 运行测试场 景阶段对已创建的测试场景进行执行, 收集相关数据; 分析测试阶段主要进行结 果分析和报告编制。 loadrunner 提供的这个性能测试过程已经涵盖了性能测试工作的大部分内 容, 但由于该过程过于紧密地与 loadrunner 工具集成, 没有兼顾使用其他工具, 或是用户自行设计工具的需求,也不能被称为是一个普适性的测试过程。另外, 该过程未对计划测试阶段、 测试设计阶段的具体行为、 方法和目的进行详细描述, 因此该方法在指导具体工作时仍存在诸多不足之处。 2、 segue 的性能测试过程 图 1.3 给出了 segue 公司 silk performer 提供的性能测试过程。 segue 提 供的这种性能测试方法非常适合性能调优和性能优化,通过不断重复的 建设银行业务系统性能测试通用模拟器的设计与实现 4 try-check 过程,可以逐一找到可能导致性能瓶颈的地方并对其进行优化 5。 图 1.3 segue 的性能测试过程 然而, segue 提供的这个性能测试过程存在与 loadrunner 的性能测试过 程同样的问题,就是过于依赖工具自身,并且缺乏对计划、设计的阶段的明 确划分,也没有给出具体的活动和目标。 3、 ptgm 模型 图 1.4 中的过程模型由 软件性能测试过程详解与案例剖析 一书作者提 出,ptgm(performance testing general model),该性能模型将性能测试过程 分为测试前期准备、测试工具引入、测试计划、测试设计与开发、测试执行和 管理以及测试分析等 6 个步骤 6。 图 1.4 ptgm 模型 第一章 绪论 5 1.2.3 常用方法存在的问题和不足 国内目前对软件性能和性能测试的认识主要存在如下问题: 1 仅关注于软件性能本身,忽略了性能的影响因素。由于软件性能最终 要通过系统的整体性能表现出来, 软件的性能就不仅与软件系统本身相关, 同时还受到系统软硬件环境、网络环境、用户的业务特征和行为特征、数 据环境等方面的影响,在这些影响因素不明确的前提下,单说软件的性能 是没有任何意义的。任何一个影响因素的变化,都可能使软件性能的指标 发生显著的变化。 2 所关注的软件性能指标不够完整, 没有充分体现出用户所关心的内容。 比如,现在大部分认为软件性能指标主要是响应时间、吞吐量等,而系统 管理员所关心的系统容量、可扩展性,以及系统运行状态等性能特征都无 法体现出来。 3 缺少统一的性能模型,使性能指标、性能影响因素及其相互关系无法 直观的展现出来。 4 缺少软件性能指标、影响因素与性能测试过程的有机融合。由于在考 虑软件性能时,忽略了软件性能相关的各种影响因素,导致在软件性能的 测试过程中, 进行测试需求分析时针对性不强, 缺少明确的测试需求分析。 1.31.3 论文的主要研究内容 在对软件性能测试国内外研究现状进行了研究和分析后, 结合建设银行信 息系统自身沿革的特点, 提出设计一个在性能测试实施中使用, 能够按照约定 的统计规律或规范模拟特定应用系统的反馈报文, 其架构通用并可灵活扩展和 配置的性能测试模拟器系统。 通过对性能模拟器的分析, 提出了系统总体设计 架构, 按照功能模块完成了性能测试模拟器的详细设计和实现, 最终完成了相 关性能测试验证工作。 1.41.4 论文的组织结构 本文研究了现有性能测试方法,了解这些技术的基本原理,分析了其中存在 的问题与不足,并且基于银行系统性能测试的特点,实现了能够仿真多种后台系 统性能测试模拟器。论文的各章节内容安排如下: 第一章,简单介绍了本文的研究背景,国内外研究现状,分析比较了其中存 在的问题与不足,明确了论文的主要研究内容及论文的组织结构。 第二章, 详细介绍了实现性能测试模拟器相关的各项关键技术: xml 技术及 建设银行业务系统性能测试通用模拟器的设计与实现 6 应用、集群技术应用、web 设计与 springmvc 技术; 第三章,提出了性能测试模拟器系统的总体设计,系统主要有五个主要功能 模块:适配器、核心层、管理控制台、统计报表和安全服务,并详细叙述了五个 模块的主要功能。 第四章,基于第三章的整体架构,提出了一个可行的性能测试模拟器系统的 设计方案,阐述了适配器层基本工作流程,完成了功能的实现;详细给出了核心 层报文的发送和接收流程,拆包和组包的规则和方法;实现了基于 javaweb 平台 技术的管理控制台模块的功能。 第五章,主要叙述了对系统的测试验证情况,介绍了测试环境的组成,设计 了详细的测试用例并对测试结果进行了分析说明。 第六章,论文的总结,对论文所做的主要工作、论文的创新点、论文目前存 在的不足和进一步要做的工作进行了说明。 第二章 性能测试模拟器及相关技术概述与研究 7 第二章 性能测试模拟器系统相关技术概述与研究 2.12.1 xml 技术 在互联网上,服务器与服务器之间、服务器与浏览器之间有大量的数据需要 交换。 xml (extensible markup language) 是 w3c(world wide web consortium,3w 联盟)于 1998 年 2 月发布的标准,其初衷是定义一种互联网上数据交换的标准。 xml 能在所有的计算机上运行, 且与平台和操作系统无关, 这一技术将使电子商 务、金融、交通等行业更加易于标准化、具有更高的可扩展性、并能够与互联网 的其他主要技术更好地结合起来。本文中性能测试模拟器的报文组包和报文转换 就是基于 xml 技术来实现的。 1什么是 xml xml 即为可扩展的标记语言。它是一套定义语义标记的规则,这些标记将文 档分成许多模块并对这些模块加以标识 7。 xml 是标记语言,它不是提供一组事先已经定义好了的标签,而是提供了一 个标准,利用这个标准,我们可以根据实际需要定义自己的新的标记语言,并为 这个标记语言规定它特有的一套标签。准确的说,xml 是一种元标记语言,它允 许我们根据它所提供的规则,制定各种各样的标记语言。 2xml 特点 (1)、开发灵活的 web 应用软件 由 xml 表示的数据可以发送到其他应用软件、对象或者中间层服务器做进一 步的处理,或者可以发送到桌面用浏览器浏览。xml 和 html、脚本、公共对 象模式一起为灵活的三层 web 应用软件的开发提供了所需的技术 8。 (2)、不同来源数据的集成 现在流行的数据库产品众多,如甲骨文公司的 oracle、 ibm 公司的 db2、 己被 ibm 收购的 informix、微软公司的 sql server、免费的 mysql 等,因而各信 息系统采用同一数据库产品是不可能的。 xml 能够使不同来源的结构化的数据很 容易结合在一起,软件代理商可以在中间层的服务器上对后端数据库和其他应用 的数据进行集成,然后数据就能被发送到客户或其他服务器做进一步的集合、处 理和分发。 (3)、数据的多样显示 html 描述数据的外观, 而 xml 描述数据本身。 由于数据显示与内容分开, xml 定义的数据允许指定不同的显示方式, 使数据更合理地表现出来。 本地的 数据能够以客户配置、 使用者选择或其他标准决定的方式动态地表现出来。 css 建设银行业务系统性能测试通用模拟器的设计与实现 8 和 xsl 为数据的显示提供了公开的机制。 (4)、在 web 上发布数据 由于xml是一个开放的基于文本的格式, 它可以和html一样使用http 进行传送,不需要对现有的网络进行变化。 (5)、压缩性 xml 压缩性能很好,因为用于描述数据结构的标签可以重复使用。xml 数据是否要压缩、不仅要根据应用来定,还取决于服务器与客户间数据的传递 量。xml 能够使用 http 1.1 中的压缩标准。 (6)、开放的标准 xml 基于的标准是为 web 进行过优化的。微软和其他一些公司以及 w3c 中的工作组正致力于确保 xml 的互用性,以及为开发人员、处理人员和不同 系统和浏览器的使用者提供支持,并进一步发展 xml 的标准。 3xml 应用领域 w3c 公布的 xml 的设计目标基本上阐明了 xml 的应用领域,xml 的前三 个设计目标是:xml 可直接在 internet 上使用;xml 应支持广泛的不同种类的应 用;xml 应和 sgml 兼容。具体来说,xml 可广泛应用于 internet、出版业、电 子商务等当今热点领域。每个行业的组织和开发人员都可用 xml 创建他们自己 的标识语言,用于在他们各自的领域中实现信息的交互,如音乐、化学、电子、 登山、财务、冲浪、石油、地质、语言、烹调、历史、工程、数学等等 9。 从另一个角度来看, 面向内容和具体应用领域的诸多 xml 国际标准的制订, 实现了软件开发人员一个曾经梦寐以求的目标:无论数据产生者位于何处, 任何数 据消费者都能够通过某种工具与他们交互,并且这种通信是基于数据的含义,而 不是数据偶然的表现形式。总的说来,面向内容管理领域的 xml 应用可分为四 类: (1)、应用系统内部的数据交换 一个大型应用系统内部可能涉及多个数据源,这些数据源包括文件系统、数 据库系统等,他们之间的数据格式复杂且异构,同时系统不同功能模块之间所采 用的数据模型也可能存在差异。在数据交换过程中将源数据采用基于 xml 的统 一数据模型进行表示,可以有效地解决数据访问统一接口问题。 (2)、实现不同软件构件的互操作 越来越多的不同类型的应用软件中所采用的数据文件格式己经或者即将采 用 xml 标准来定义。 在面向各种应用领域的 xml 标准不断推出的同时, 相关专 用软件的开发市场也呈现飞速发展的态势。 微软将 office 2003 的设计完全建立在 xml 技术基础之上的举动更证明了将 xml 数据作为应用软件数据文件的定义标 准已经成为大势所趋。office 2003 能够将不同的应用软件数据以 xml 的形式保存 第二章 性能测试模拟器及相关技术概述与研究 9 下来。 (3)、可定制数据表示的样式 在基于 xml 技术的数据表示引擎实现之前,如果希望在 web 环境下生成具 有分页特征的文档,则必须使用一种传统的文本编辑软件(如 microsoft word)来 进行文档的设计。而随着 xml 技术在信息系统中的推广,可以使用 xml 文件保 存纯结构化的源数据,并使用 xslt 来定义针对 xml 元数据的查询条件和排版 信息,达到数据的内容和表现形式分离的效果。 2.22.2 集群技术分类及应用 2.2.1 集群技术的分类 随着微处理器技术和高性能网络技术的飞速发展, 集群技术逐渐成为一种有 成本效益的并行/分布式计算资源。集群系统不但能够充分利用现有的计算资源, 而且能够通过较低的软、硬件代价实现较高性能的计算机系统,有效提高计算机 系统的可用性。 本文在性能测试模拟器的部署上采用了集群技术,从而降低了整个项目的运 维成本。 集群系统通常分为三大类: 高性能集群、高可用性集群和负载均衡集群 10 。 1高性能集群 对外像一个超级计算机, 这种超级计算机内部由十至上万个独立处理器组成, 并且在公共消息传递层上进行通信以运行并行应用程序。高性能集群致力于解决 大规模科学计算问题以及存储处理海量数据的问题等。 2高可用性集群 高可用性集群(high availability cluster) , 是指以减少服务中断(宕机)时间为 目的的服务器集群技术。高可用性集群的出现是为了使集群的整体服务尽可能可 用, 如果某个节点失败, 它的替补将在几秒钟或更短时间内接管它的职责。 因此, 对于用户而言, 集群永远不会停机。 ha 集群通常包括2至8个或更多的节点 1111 。 3负载均衡集群 负载均衡集群就是带均衡算法的服务器集群。 在多节点之间分发和处理负载, 该负载可能是需要均衡的应用程序处理负载或网络流量负载, 集群使负载可以在 计算机集群中尽可能平均地分摊处理。 这类集群为企业需求提供了更实用的系统。 在集群的这三种基本类型之间, 经常会发生混合与交杂, 比如高可用集群也可以 在其节点之间均衡用户负载 12。 集群系统具有高可扩展性、高可靠性、高性能、高性价比等优点。系统管理 员可以随意增加和删改集群系统的节点, 使客户在不知不觉中完成升级。集群内 建设银行业务系统性能测试通用模拟器的设计与实现 10 各节点服务器通过一内部局域网相互通讯, 当一台节点服务器发生故障时, 这台 服务器上所运行的应用程序将在另一节点服务器上被自动接管。因此在提高了系 统的可靠性的同时, 集群技术也大大减小了故障损失。另外可以采用廉价的硬件 构造高性能的系统, 这样的系统既节省了费用, 又提高了性能。 2.2.2 集群系统的应用 集群技术的应用领域非常广泛,几乎所有传统的并行计算领域,商用数据密 集 web 服务器及 web 数据库(如在线交易、动态网页服务等)、远程教育,基于内 容的快速图像检索(视频点播处理、图像分析、交互式电视、指纹及人脸识别等)、 密码破解、元计算、基因工程、企业数据挖掘、政府部门(统计、税务、财政等部 门的数据处理与分析)及其他许多领域都使用集群系统 13。 1科学群集与并行计算 随着计算机和计算方法的飞速发展, 人们越来越广泛的使用计算方法来模拟 客观世界的过程,模拟在实际中无法重复或实验的自然及社会现象,也就是说通 过“数值实验”来发现新规律已成为一种重要手段。科学计算正在成为一门边缘 科学。近年来,各个学科和工程领域中已逐步形成计算性科学分支,如计算流体 力学、计算物理、计算化学、计算力学、计算地震学、计算生物学等等,在这些 科研领域的计算是以并行计算为基础的,而科学集群是并行计算的基础。目前在 众多的科研领域科学集群获得了广泛的应用, 比如涉及区域分解、 解线性方程组、 有限差分时域分解等都可以应用。此外,在计算流体力学、电磁系统设计、分子 反应动力学、化学动力学、量子染色动力学、药物设计、生物工程、超导建模、 结构生物学等都得到广泛的应用。就目前看,解决对性能要求在 500gflops 范围 以内的某些重大挑战问题都可能应用集群系统 14。 2集群技术在银行系统中的应用 随着各大银行信息系统数据大集中的完成, 众多的银行业务都集中到了中央 大主机上去了,银行业务大集中是为了提高数据的安全性。而银行众多的中间业 务,包括代缴代收、基金业务、第三方存管等业务并未完全集中,还保留着前置 机系统。他们都是相对独立的系统,各自运行在不同的单独服务器上,任何一个 业务系统的服务终止都将为银行带来直接或间接的损失。将银行中间业务系统组 成一集群,并将该集群设置成多备一的集群工作部模式,即多个服务系统共用一 台备份服务器作为其第一备份主机,根据业务系统的兼容性、数据库的兼容性、 服务器处理能力定义第二、第三备份主机环境,实现在运行中间业务的服务器发 生故障时,有备份服务器进行任务接管。这样可以较好的满足银行业务系统高可 用、连续服务等需求。 第二章 性能测试模拟器及相关技术概述与研究 11 2.32.3 web 设计与 springmvc 技术 随着软件规模和复杂度的日渐升级,在软件工程实践中,人们越来越深刻的 认识到系统总体结构设计和规格说明的重要性己远远超过特定算法和数据结构的 选择,良好的体系结构对保证系统的成功起着至关重要的作用 15。 互联网络的广泛应用,日益改变着人们的生活、工作与思维方式,各种 web 应用系统也应运而生, 尤其是电子商务、 电子政务的应用己经成为一个热门领域。 为了满足用户的需求,适应激烈的市场竞争,各种 web 应用系统必须不断地改进 其内容和形式。软件系统的架构设计决定着软件产品的生死存亡,良好的开端相 当于成功的一半, 因此选择正确合理的系统体系结构是关键 1616。 web 应用系统 b/s 模型的三层或多层框架结构设计主要包括用户界面的设计、应用逻辑或事务逻辑 的设计、数据库的设计三个主要方面,因此它具有操作简单、易维护、兼容性好, 系统稳定和易移植等优点。mvc(model/view/controller)设计模式针对 b/s 三个主要方面的处理将系统划分为模型层、视图层、控制层,采用 mvc 模 式构建 web 应用系统的体系结构,能够有效的解决在 web 应用系统开发过程中 由于系统结构的复杂程度较高而带来的如何解决代码之间的耦合度、代码的易维 护性、应用框架的可重用性、组件的可重用性、易测试性和不同技能的开发人员 的分工等诸多关键性问题 17。因此,mvc 模式适应了日益复杂的 web 应用系统 的设计需求。 为了降低 mvc 模式在 j2ee 平台上实现的复杂度,web 框架适时的诞生了。 web 框架大都是基于 mvc 模式的,它们定义了各自的一套规范,分别把业务逻 辑,显示和流程分开,开发者只要按照这套规范进行开发,就可以开发出低耦合 度,高可维护性的 web 程序。 2.3.1 mvc 设计模式 在 internet 迅速发展的今天,如何快速,有效地构建架构良好,稳定,易扩 展的三层 b/s(browser/server)结构己经成为了开发研究的热点。 mvc 设计模式(模 型一视图一控制器模式)体现了一种“分治”的思想,在实现三层 b/s 结构中具有 得天独厚的优势。 mvc 模式经常作为一个设计模式出现在各种讨论中, 但实际上 mvc 是架构 模式而非设计模式。但事实上,mvc 模式与其它的设计模式的关系密不可分, 有的文献资料把合成模式、策略模式、观察者模式三者混合形成 mvc 构架模式, 这当然是可行的。如果一定要把 mvc 模式当作设计模式来看的话,它有可能会 涉及到文献 18中提出了 23 个设计模式中的十几种。因此,把 mvc 模式视作比设 计模式粒度更大,层次更高构架(模式)是较为妥当的做法。 建设银行业务系统性能测试通用模拟器的设计与实现 12 mvc 是一种构架模式,它把应用程序的输入、处理和输出强制性的分开。 mvc 把应用程序分为三个模块:模型、视图和控制器。它们承担不同的任务。 图 2.1 显示了这几个模块各自的功能及相互的关系。 1视图(view) 视图是用户看到并与之交互的界面。这个界面主要包括 html, macromedia flash,和像 xhtml、xml/xsl 、wml 等一些标识语言以及 web service。 如何处理应用程序的界面变得越来越有挑战性。mvc 一个大的好处是它能 在应用程序中,处理很多不同的视图。在视图中其实没有真正的处理发生,不管 这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出 数据并允许用户操纵的方式。 图 2.1 模块各自的功能及相互的关系 2模型(model) 模型表示企业数据和业务规则。在 mvc 的三个部件中,模型拥有最多的处 理任务。 例如它能用象 javabean 和 ejb 这样的构件对象来处理数据库。 被模型返 回的数据是中立的,就是一说模型与数据格式无关,这样一个模型能为多个视图 提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少 代码的重复性。在模型层又可细分为三个层次,分别是业务逻辑层,持久层和数 据资源层,这些是企业应用中核心的部分。 3控制器(controller) 用于管理用户与视图发生的交互。一旦用户想对模型进行处理时,它不能直 接去执行模型,而是通过控制器来间接地实现。控制器能从视图中取值,然后将 相应的值传给模型进行处理。控制器接受用户的输入并调用模型和视图去完成用 第二章 性能测试模拟器及相关技术概述与研究 13 户的需求。当用户单击 web 页面中的超链接和发送 html 表单时,它只接收请 求并决定调用那一个模型组件去处理请求,然后确定用哪个视图来显示模型处理 返回的数据。控制器连接不同的模型和视图去完成用户的需求,给定一些可重用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年秋季初中历史开学第一课 学科学习方法与策略
- 涉法涉诉校园舆情依法处置细则
- 给水管道施工方案模板
- 2026年公务员考试备考行测《图形推理》知识点练习题含答案解析
- 建筑装饰企业安全生产管理制度
- 新发传染病演练脚本
- 2026危险化学品安全作业能力检测试卷及参考答案详解
- 矿井紧急避险系统施工方案
- 2026年医师定期考核题库(必刷)附答案详解
- 第三单元综合测试卷-2025-2026学年统编版语文三年级上册
- 2025江苏中吴环保产业发展有限公司电镀产业园运营总监岗招聘2人笔试备考试题及答案解析
- 2025北京初三一模物理汇编:热现象章节综合2(京改版)
- 业务工单管理办法
- 个体工商户登记申请书、提交材料规范、经营者变更登记承诺书
- 红外线治疗技术课件
- 化妆行业的法规和标准规范
- 人保财险车险合同范本
- 第六届“四川工匠杯”职业技能大赛(互联网营销赛项)理论参考试题库(含答案)
- 星级复评规范评分表星级饭店访查规范
- 私人房屋装修安全免责协议书
- 自动控制原理 第3版 课件全套 陶洪峰 第1-8章 概论、控制系统数学模型-线性离散系统分析
评论
0/150
提交评论