毕业论文-交易中间件的研究与设计39969.pdf_第1页
毕业论文-交易中间件的研究与设计39969.pdf_第2页
毕业论文-交易中间件的研究与设计39969.pdf_第3页
毕业论文-交易中间件的研究与设计39969.pdf_第4页
毕业论文-交易中间件的研究与设计39969.pdf_第5页
免费预览已结束,剩余67页可下载查看

毕业论文-交易中间件的研究与设计39969.pdf.pdf 免费下载

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

文档简介

沈阳工业大学硕士学位论文 摘要 分布式 应用系统具有网 络化和异构性的 特点,是网络一体化和并行处理分布化的产 物。 交易中间 件是一种典型的 分布式事务处理系统, 成为构筑企业信息系统的主流平 台,它提供了强大的跨平台 通讯、负载平衡、容错及其故障恢复能力,并在这个基础上 进一步强化了 安全性、 可管理性和高可用性的新一代通用型三层结构平台的中间 件, 把 企业中 众多的异构系统、异构数据库、不同网络环境紧密的联系起来,并在应用层提供 了互操作性的功能。 x / o p e n组织是 x / o p e n公司和开放软件基金会合并组建而成的国际开放系统组 织。 x / o p e n主要为网 络计算和分布式应用建立开放的标准, 它被大多数的国际硬件生 产厂家及软件提供商所认可。 x / o p e n组织提出的分布式事务处理模型 d t p 是建立分布 式事务处理环境的国际标准。 本文首先系统的论述了交易中间件的概念、演化、及其在中间件中的定位。然后, 在综合分析了x / o p e n d t p模型及研究国内 外最新研究成果的基础上,并且结 合 t c p / i p网 络协议, 从系统层的 角度出 发, 深入研究并实 现了 一个符合 d t p模型标准,并 适 用于异步、 低可靠网络环境和跨平台的交易中间件。 其次, 重点对交易中间件在交易完 整性、体系结构、通讯效率以 及通信机制等实现技术方面做了 深入的剖析,并结合实际 应用,分别对这些技术进行了大胆的改造和优化,不同程度的提高了系统性能,更好的 满足了应用需求。 最后, 客观的 评价了 本论文设计的交易中间 件的不足,并展望了交易中间件未来的 发展趋势。 关键词:交易中间件,x / o p e n模型,两阶段提交协议 沈阳工业大学硕士学位论文 i n v e s t i g a t i o n a n d d e s i g n o f t r a n s a c t i o n p r o c e s s i n g mi d d l e w a r e ab s t r a c t t h e d i s t ri b u t e d a p p l i c a t io n s y s t e m w i th th e c h a r a c t e r o f n e t w o r k a n d d i ff e r e n t e n v i r o n m e n t i s th e r e s u lt o f t h e n e t w o r k a s a w h o l e a n d th e p a r a l l e l p r o c e s s in g f o r th e d i s t ri b u t e d t a s k s .t r a n s a c ti o n m i d d l e w a r e i s a t y p i c a l k i n d o f t h e d i s t ri b u t e d o n - l i n e t r a n s a c t io n p ro c e s s in g ,b e c o m i n g a m a j o r p l a t f o r m o f e n t e r p ri s e i n f o r m a t i o n s y s t e m , w h ic h o ff e r s c o m m u n ic a t io n o f s t r id i n g p l a t f o r m , l o a d i n g b a la n c e , f a u lt - t o l e r a n t a n d r e s u m a b l e a b i l it y , a n d s t r e n g th e n s a n e w g e n e r a t i o n m id d l e w a re in c o m m o n w it h 3 - l a y e r a r c h i t e c t u r e p ro v i d e d w i t h t h e s t ro n g s e c u r i t y , e x c e ll e n t m a n a g e m e n t a n d h i g h a v a i l a b i l i t y i n c o m m o n . n u m e r o u s d i s t ri b u t e d s y s t e m , d i ff e r e n t d a t a b a s e a n d d i ff e r e n t n e t w o r k e n v i r o n m e n t a r e c l o s e l y l i n k e d u p a m o n g a n e n t e r p r i s e , o f f e r in g t h e f u n c ti o n o f m u t u a l o p e r a t i o n o n a p p l i c a t i o n l a y e r . t h e o p e n g r o u p i s a n i n t e rn a t io n a l o p e n s y s t e m s o r g a n iz a t i o n t h a t i s l e a d i n g t h e w a y in c r e a ti n g t h e in fr a s t r u c t u r e n e e d e d f o r t h e d e v e l o p m e n t o f n e t w o r k - c e n t ri c c o m p u t in g a n d t h e i n f o r m a t io n s u p e r h i g h w a y . f o r m e d in 1 9 9 6 砂 th e m e r g e r o f t h e x i o p e n c o m p a n y a n d th e o p e n s o ft w a re f o u n d a t io n , t h e o p e n g ro u p i s s u p p o r t e d b y m o s t o f t h e w o r l d s l a r g e s t u s e r o r g a n i z a t i o n s , i n f o r m a t io n s y s t e m s v e n d o r s a n d s o ft w a r e s u p p li e s . t h e x / o p e n d i s t ri b u t e d t r a n s a c t i o n p ro c e s s i n g ( d t p ) m o d e l i s a s o ft w a re a r c h i t e c t u r e t h a t a l lo w s m u l t ip l e a p p l i c a t i o n p ro g r a m s t o s h a r e p r o v i d e d b y m u l t ip l e r e s o u r c e m a n a g e n e n t s , a n d p ro v i d e s i n t e rn a t i o n a l s t a n d a r d f o r d i s t r i b u t e d a p p l i c a t i o n t h i s p a p e r d i s c u s s e s s y s t e m a t i c l y a s e ri e s o f c o n c e p t , e v o lu t i o n ,s t r u c t u r e o f t r a n s a c t i o n p ro c e s s i n g m i d d l e w a r e a n d l o c a l i z a t i o n o f m i d d l e w a r e a r g u m e n t a t i o n a t f a s t . t h e n b a s e d o n s y n t h e t i c a l l y a n a l y z in g x / o p e n d t p m o d e l a n d i n v e s t ig a t i n g a p p ro x i t a t e r e s u lt i n l a n d a n d a b o a r d , c o m b i n i n g t c p / i p p r o t o c o l ,f ro m a n g l e o f o p e r a t i o n s y s t e m , d e e p a n a l y s e s a n d b u i l d a n t r a n s a c t i o n p r o c e s s in g mi d d l e w a r e ,w h i c h b e l o n g s t o d t p m o d e l s t a n d a r d , a n d a p p l i e s t o a s y n c h r o n o u s , f a l l i b l e n e t w o r k a n d h e t e r o g e n e o u s p l a t f o r m s . s e c o n d l y , d e e p a n a l y s e s o n i n t e g r a l i t y , l o a d in g b a l a n c e ,c o m m u n i c a t io n e f fi c i e n c y a n d s t r u c t u r e a b o u t t r a n s a c t io n p ro c e s s i n g mi d d l e w a re a r e m a d e i n t h i s p a p e r , a n d c o m b i n i n g t h e p r a c t i c a l a p p li c a t i o n , t h e -2- 沈阳工业大学硕士学位论文 b o l d t r a n s f o r m a t io n a n d o p t i m iz a t io n t o t e c h n o l o g ie s i s s e p a r a t e l y c a r r i e d o n , w h i c h e n h a n c e s s y s t e m a t i c fu n c t i o n i n v a r io u s d e g r e e s t o m e e t t h e d e m a n d . f i n a l l y , t h i s p a p e r e v a l u a t e s s h o r ta g e o f t r a n s a c t i o n p r o c e s s i n g mi d d l e w a r e ,a n d p r o s p e c t s d e v e l o p m e n t t r e n d s o f t r a n s a c t i o n p ro c e s s i n g mi d d l e w a r e i n t h e f u t u re . k e y w o r d s : t r a n s a c t i o n p r o c e s s in g m i d d le w a r e ,x / o p e n m o d e l , t w o p h a s e c o m m it 独创性说明 本人郑重声明: 所呈交的论文是我个人在导师指导下进行的 研究工 作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方 外,论文中不包含其他人己经发表或撰写的研究成果,也不包含为获得 沈阳工业大学或其他教育机构的学位或证书所使用过的材料。与我一同 工作的同 志对本研究所做的任何贡献均已 在论文中做了明确的说明并表 示了谢意。 签 名 : 华生 a 日 期 : 卫 创 琦 润 拍 关于论文使用授权的说明 本人完全了 解沈阳工业大学有关保留、使用学位论文的规定,即: 学校有权保留送交论文的复印件,允许论文被查阅和借阅;学校可以公 布论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论 文。 ( 保密的论文在解密后应遵循此规定) 、 密 气 齐二。 、 l . 0. 。 、 。 : 。 r o。, 。 = 6 7 v- y - 0- -f y l i率“ s 一 ii a a : 沈阳t业大学硕士学位论文 1 绪论 1 . 1 中间件概述 中间件 ( m i d d l e w a re ) 是基础软件的一大类, 属千可复用软件的范畴。 顾名思义, 中 间件处于操作系统软件与用户的 应用软件的中间 l 。 具体来说,中间 件在操作系统、 网络和数据库之上,应用软件的下层,如图 1 .1 所示,其作用是为处于上层的应用软件 提供运行与开发的环境, 帮助用户灵活、高效地开发和集成复杂的应用软件。在众多关 于中间件的定义中,比较普遍被接受的是国际数据公司 ( i d c )表述的:中间件是一种 独立的系统软件或服务程序,分布式应用借助这种软件在不同 的技术之间 共享资 源,中 间件位于客户枷服务器的操作系统之上,管理计算资源和网络通信。i d c对中间件的 定义表明,中间件是一类软件,而非一种软件;中间件不仅仅实现互连 ( c o n n e c ti v i ty ), 还要实 现应用之间的互操作 ( i n t e r o p e r a b i l i ty );中间件是基于分布 式处理的 软 件, 最突出 的 特点是其网 络通信功能 2 1 中间 件技术最初在 9 0年代出 现,其根本目 的是帮助单一的 集中 式程序向 客户端/ 服务器 ( c l i e n t / s e r v e r ) 模式移植,并且提供异构平台 上的 通讯。 公认最早的中间件是 起始于开放软件基金 ( o s f )的分布计算环境 ( d c e ), o m g的c o r b a和m i c ro s o ft 的 c o m / d c o m。上述的中间件实际是一些集成的系统服务,它们能在异构的网络中 为应用程序提供互操作和灵活的 分布环境,从而减少网 络应用的复杂性和软件开发的难 度闭 。 沈阳工业大学硕士兰学 习 立 论文 应用程序 ap i s 中间件 ( 分布式系统服务) m i d d l e wme( di s t r i b u t e d s y s t e m s e r v 平台 os ( w 1 n 2 0 0 0 ) 巨 不万一 l _ _ 一 o s 一l in 竺 一 图1 . 1 中 间件在应用中的定 位3 1 从图 1 .1 可以 清晰的看出中间件的作用。中间件服务是一系列存在于网络系统节点 上的分布式软件,其相对于操作系统,提供了更多的a p i 功能集, 使应用达到如下的目 标: ( 1 ) 独立于网 络服务,降 低应用之间的 祸合度, 中间 件产品 对各种硬件平台、 操作 系统、网络数据库产品以及c l i e n t 端实现了兼容和开放; ( 2 )中间件实现了 对交易的一致性和完整性的保护,提高了系统的可靠性; ( 3 )中间件产品可以降低开发成本提高工作效率; ( 4 )中间件保持了平台的 透明性,使开发者不必考虑操作系统的问题。 1 . 1 . 1 分布式交易处理 d t p ,即 分布式交易处理 ( d i s t r i b u t e d t r a n s a c t i o n p r o c e s s ), 主要表现为一些 有实时性需求的应用,如银行、证券、电 信、航空、交通、海关等业务处理系统。 沈阳工业大学硕士学位论文 目 前的d t p应用多数是客户/ 服务器结构的,由 客户端处理数据的输入输出 和基本 预处理,服务端进行具体的数据处理。客户/ 服务器结构,有利于充分利用主机的处理 能力,客户机有自己独立的处理能力,既分担整个系统的部分处理工作,也可以充分满 足各种用户对操作界面的不同需求。 一个d t p 应用必须处理好两个关键问 题:客户方与服务方的通讯效率;客户方与服 务 方的 交易 完 整 性 管 理 a ) 。 这 两 个 关 键问 题处 理 得 是 否 合 理, 将 决 定 一 个 d t p 应 用的 成 功与否。 在以 往中间 件没有被充分重视的时候,一个d t p 应用通常采用两种方式来实现: ( 1 )开发一个通讯程序来连接客户方和服务方,由 应用程序自己解决交易完整性 问题; ( 2 )直接使用数据库的连接工具,同时采用数据库的交易处理机制来管理交易的 完整性。 实践证明,这两种方式在一个大规模系统中都存在着由于先天不足所产生的不适应 性,不能很好的解决效率和交易完整性管理这样两个关键问题。解决问题的必由之路, 是 遵照x / o p e n d t p 模型的 分层结 构思想进行设计, 在一个d t p 应 用中 架构中 间 件。 本文在综合分析了x / o p e n d t p 模型及研究国内 外最新研究成果的 基础上,并且结 合 t c p / i p网络协议, 从系统层的角度出 发,深入研究并实现了 一个符合 d t p模型标 准,并适用于异步、低可靠网络环境和跨平台的交易中间件。很好的解决了d t p 应用的 通讯效率和交易完整性。 1 . 1 .2 交易中间件 中间件分为消息中间件,对象中间件,交易中间件,数据访问中间件,应用服务 器, 安 全中 间 件, 专用中 间 件 5 。 交易 ( t r a n s a c t i o n ) , 又 称 之为事务。 交易中 间 件 是中间件的一种。它是针对分布式环境下, 事务处理而设计的系统级软件。交易中间 件 即 事务监控器 (u p m o n i t o r ) , 其核心作用是 保证分 布式计算环境中 各节点交易处理结 果的一致性,及时的交易响应时间,使整个系统达到高吞吐率,7 x 2 4小时的不间断运 行。在分布式交易处理 ( d i s t r i b u t e d t r a n s a c t i o n p r o c e s s )中负责正确传递交易, 管理交易的完整性,调度系统资源和应用程序均衡负载运行,保证整个系统运行的高可 沈阳工业大学硕士学位论文 靠性和高效性。交易中间件更多地面向分布式交易处理的全局交易、异构环境的交易互 操作以及提供丰富的开发工具,实现广泛的互联和互操作,正好弥补了数据库系统在分 布式交易处理方面的缺陷,保证了各种类型交易的完整性以及在不同网 络介质甚至在不 同数据库之间所进行的交易的完整性,应用程序只需要关注与数据库的应用逻辑的处 理, 无须过多关心事务的 完整性6 。由 数据库系统 对一台 机器内 部的 交易进行处理及监 控, 而由 交易管理器来提高客户方和服务方的通讯效率,实现交易的一致性。由 于网络 的不可靠,旧有系统常常出现传输过程中交易数据的丢失,造成客户方和服务方的交易 不完整或数据不一致,导致银行的资金风险和信誉风险。交易中间件在处理大量并发交 易时通过有效的并发控制手段,保证每笔交易的响应时间;避免交易出 现峰值时系统阻 塞或崩溃, 保证在系统故障后对交易的恢复能力: 还能使多个联机交易处理中间件互通 互联以及与其它应用系统的互联;除此之外,还为开发人员提供足够的开发工具、调试 工具。因 此,交易中间 件在联机交易处理中 大有作为。 事务处理监控最早出现在大型机上,为其提供支持大规模事务处理的可靠运行环 境。随着分布计算技术的发展,分布应用系统对大规模的 事务处理提出了 需求,比如商 业活动中 大量的关键事务处理。 事务处理监控界于c l i e n t 和s e r v e r 之间, 进行事务管 理与协调、负载平衡、失败恢复等,以提高系统的整体性能。它可以 被看作是事务处理 应用程序的操作系统。总体上来说,事务处理监控有以下功能:进程管理,包括启动 s e r v e r进程、为其分配任务、监控其执行并对负载进行平衡。 事务管理,即保证在其 监控下的事务处理的原子性、一致性、独立性和持久性。 通讯管理为c l i e n t 和 s e r v e r 之间提供了多种通讯机制,包括请求响应、会话、排队、订阅发布和广播等。事务处理 监控能够为大量的 c l i e n t提供服务,比如飞机定票系统。如果 s e r v e r为每一个 c l i e n t 都分配其所需要的资 源的话, 那 s e r v e r 将不堪重负。 但实际上, 在同 一时刻并 不是所有的c l i e n t 都需要请求服务, 而一旦某个c l i e n t 请求了 服务, 它希望得到快速 的响应。事务处理监控在操作系统之上提供一组服务, 对 c l i e n t请求进行管理并为其 分配相应的服务进程,使 s e r v e r在有限的系统资源下能够高效地为大规模的客户提供 服务6 沈阳工业大学硕士学位论文 1 .2 文献综述 1 .2 . 1 国内 外中间 件技术研究的现状 最早具有中间 件技术思想及功能并投入实用软 件是工 b m的c 工 c s , 但由 于c 工 c s 不是 分布式环境的产物,因此人们一般把 t u x e d 。作为第一个严格意义上的中间件产品。 t u x e d 。 是1 9 8 4 年在当时贝尔实验室开发完成的,1 9 9 5 年被现在的b e a 公司收购。尽管 中间件的概念很早就己经产生,但中间件技术的广泛运用却是在最近 1 0年之中。工 b m 的消息中间 件m q s e r i e s 是9 0 年代的 产品,而b e a 的m e s s a g e q 和m i c r o s o f t 的m s m q 等 消息中间件产品也都是最近几年才成熟起来。国内 在中间件领域的起步阶段正是整个世 界范围内中间件的 初创时期。东方通科 1 9 9 5年就推出第一个中间件产品t o n g l i n k / q 。 可以 说,在中间件领域国内的 起步时间并不比国 外晚多少。 但是现有的中间件产品 距其应遵循的一些原则还有较大距离,多数流行的中间件服务使用专有的a p i 和运行平 台,使得网络应用需建立在单一厂家的产品上,来自 不同厂家的产品很难实现互操作。 应用开发者在这些中间件服务之上建立自己的应用还需要承担很大风险。例如 m i c r o s o f t 的m s m q 只 运行 在w i n d o n s 系列平台 上, 而 i b m 的m q s e r i e s 在其 i b m 主机的 u n i x 系统 i 2- 行。要将m s m q的功能扩展到其他非w i n d o n s的操作系统 ( 如u n i x , a s / 1 0 0 , t a n d e m , d i g i t a l v m s )并和m q s e r i e s 进行无缝连接,还需要用l e v e 1 8 s y s t e m s 公司的消息队列连接器 ( m q c )。交易中间件缺少一个统一的国际标准,实际上增加了 应用集成的风险和成本, 所以需要选择一个开放的标准作为实现交易中间件的基础。 x / o p e n组织主要为网 络计算和分布式应用建立开放的 标准,它被大多数的国际 硬件生 产厂家及软 件提供商 认可7 o x / o p e n 提出的d t p 模型 是建立分 布式处 理环境的国际 标 准,本文所研究的交易中间件就参考了 该模型,交易中间件可以 看作消息中间件的一个 重要分支。 1 .2 .2 未来交易中间 件技术发展预测 随着各种计算机标准的出 现和技术的 进步,中间 件技术作为软件行业崛起的一个崭 新的分支,正在全球范围内迅猛发展。以下就从技术、应用、市场几个方面探讨交易中 间件的未来发展方向。 ( 1 )交易中间件技术发展 沈阳工业大学硕士学位论文 缺少一个开放的标准是交易中间件被大范围 使用的一个主要障碍,为帮助交易中间 件建立开 放的标准,目 前各厂商正根据 x 1 o p e n组织定义的 分布式事务处理参考模型 ( d t p ) 来建立统一的交易中间 件的 技术标准。 另一方面, 大量支持分布式计算的新标 准不断出 现, 这些标准包括 j a v a消息 服务 ( j m s ), 可扩展标记 语言 ( x m l ) , 简单对 象访问 协议 ( s o a p ), 语用通用多点传送 (p g m )。因此如何将各种标准融合在一起, 解决不同厂商产品在性能,扩展性,管理和健壮性等方面的差异性,仍有较长的路要 走。中间件技术发展的另一个趋势是基于消息的中间件 ( m o m )和基于对象的中间件 ( 0 0 m ) 的 统一 , 产生 事 务 处 理消 息中 间 件。 现 在 这种技 术 还 处 于 试验 阶 段 叭 ( 2 ) 交易中间 件的 应用 随着市场竞争的加剧以 及从事电 子商务的需要, 企业经常要进行业务流程的调整, 越来越多的企业开始关注系统的伸缩性和可扩展性。交易中间件可以跨平台操作,为不 同 操作系统上的 应用软件集成提供方便,从而满足企业内部对系统伸缩性和可扩展性的 要求。由 于以 上因素的 作用,交易中间件在银行、电 信。 金融等大规模关键事务领域中 整合 各种异构平台、 保证交易完整 性等方面 表现出了 超强的能 力 9 1 交易中间件的重要性己 经开始为国内 信息产业所重视, 并视之为支持中国软件业发 展的 支柱之一;同时, 我国的 银行金融系统、电 信、政府部门己 经把中间 件技术作为网 络建设的自 然选择, 用以支持各自 核心业务的 运营。 i n t e r n e t应用的 普及、电 子商务的 兴起以 及国内 信息化建设的 深入, 有效的 推动 了中间件、应用服务器和软件平台技术的应用和发展。金融行业是最早采用交易中间件 产品的领域,作为一种重要的基础软件,中间件在开发和优化银行的柜面系统中发挥了 巨 大的 作用。 在电信领域,中间 件的解决方案先后为中国电 信、中国 联通、中国 移动、 网 通、 铁通等各运营商广泛应用。迄今为止,交易中间件广泛应用于从银行、电 信、 政 府到交通运输、文教卫生等十几个行业,可谓 无网不在。 ( 3 )中间 件的 市场 根据国际数据公司 (i d c ) 调查,2 0 0 3年国际中间件市场规模将达 2 3 8亿美元, 与1 9 9 7 年相比, 增 长率 达4 0 8 yo 0 1 9 9 8 年中国中间 件市场总 值仅为1 2 . 3 4 亿美元, 而 到2 0 0 4 年将达到9 0 . 3 亿美元,年增长率高达 3 8 . 7 % a 1 9 9 7 -2 0 0 2 年增长率最高的 沈阳工业大学硕士学位论文 中间 件将集中在消息中间 件、交易中间 件、 对象中间件、 应用服务器中间 件、 数据访问 中 r7 件 等 5 种 10 近几年,随着网上信息安主问 题的出 现,安全中间件也应运而生。中国中间件市场 目 前也初具规模, 据赛迪顾问统计,1 9 9 9年国内 支撑软件的产值是 4 4 . 8亿元人民 币, 约占国内软件总产值的四分之一,而2 0 0 0 年到2 0 0 2 年三年的中间件市场总容量将 近9 亿美元。中间件市场空间之大,成长率之高,由此可见一斑。随着市场经济的不断 发展, 特别是电 子信息化的不断延伸,中间 件无疑将在增强企业核心竞争力和加速企业 信息化建设的进程方面扮演着重要角色。 1 .3 课题研究的目 的 和意义 1 .3 . 1 课题研究的目的 国内 现有的 交易中间 件产品 市场, 主要由国 外产品 统治, 这些产品 价格高, 对硬件 及系统环境要求高, 一般的中小企业无法承担, 且配置复杂,不易维护等, 这些都限制 了 其应用。另一方面, 这些产品 技术比 较成熟, 具有完善的系统功能, 如并发处理能力 强,具有复杂的交易处理功能,通信方式多等,但在中小型应用中,由于复杂的功能, 反而降低了事务处理的效率。这些都是在实际应用中不希望看到的。 为了 要解决这些问 题, 首先分析了 现有的国 外交易中间件产品的 实现原理,并在此 基础上提出了具有理论及实践意义的交易中间件的整体框架思想,为进一步解决 交易中 间件在实际应用中的问题及加快交易中间件产品的国产化,做了有益的尝试。 1 .3 .2 课题研究的意义 一方面,面对激烈的市场竞争,企业为了求得生存,需要不断的调整服务业务以便 更好的满足用户需求, 这就对传统的软件开发方法产生严峻的 挑战。 另一方面,随 着现 有的应用的不断扩充和新业务的不断增加,企业级应用又面临着一个新的危机,许多应 用程序需要在网络环境的异构平台上运行,在这种分布异构环境中,存在多种硬件平 台,在这些硬件平台 上又存在各种各样的系统软件,以 及风格各异的 编程语言, 如何把 这些系统集成起来并在其上开发新的 应用, 是一个非常而又现实的问 题。为了 解决这个 分布异构问题,产生了中间件的概念。 随着各种计算机标准的出f al ,和拉术的讲步,巾 沈阳工业大学硕士学位论文 间件技术作为软件行业崛起的一个崭新的分支,正在全球范围内迅猛发展。中间件是软 件技术发展的 一种潮流,被誉为发展最快的软件品种,近年来势头强劲。 交易中间件技术在企业级的应用,对于传统的企业级软件应用产生深远的影响: ( 1 )交易中间件作为一种重要的基础软件,在开发和优化企业级系统中将发挥巨 大作用。首先,由于交易中间件对服务进程的有效管理,可以减小应用系统对数据库并 发的用户数的要求,从而节约了 对数据库的投资,可以为企业节约大量的建设成本。 ( 2 )由于中间层的引入,使应用与数据隔离,从而提高了系统的安全性,而安全 对电信业来说至关重要。 ( 3 )通过使用中间件,使软件系统的结构清晰,可扩展性好。对新添加的业务只 须配置参数就可以扩展新的业务,从而大大地降低了开发新的应用系统的风险和开发成 本,提高了开发的效率。 ( 4 ) 在美国 等发达国家,中间件己 经与操作系统、 数据库管理系统并驾齐驱,成 为基础软件的三驾马车之一,特别是在最近几年,只要是分布式应用软件大多是在中间 件的基础上开发的. 我国在交易中间件领域并不落后,起步时间与国外厂商基本相同, 在国内 市场的占 有率与国 外厂商处于同 一起跑线上。民 族软件产业的兴盛必须依靠规模 市场的 支撑。中间 件作为系统级软件, 有更多的 机会走出国门, 参与国际 竞争 2 1 。因 此 对本课题的 研究, 将有助于国内 软件业的发展,同 时也切实有效的 解决了企业目 前因为 业务拓展而带来的相关问 题,有助于国内企业在与国外企业的竞争中取胜。 1 .4 课 题来源和课题研究背景 本课题是辽宁移动客服系统改 造项目 的 组成部分,它的 主要工作是采用交易中间 件 来改造传统的客户机服务器模式,提高系统的灵活性、可扩展性、处理效率及降低维护 费用。 随着中国 加入w t o的脚步的临近,本来竞争就己 经非常激烈的电 信业又而临一大新 的 挑 战: 与国 外电 信 之间 的 竞 争己 经 提 上日 程。 首 先, 如 何 在与 技术 先 进、 . 服 务 质 量一 流、 资金雄厚的 外国电 信和本国同 行之间的 竞争中 求得生存和发展将是国内电 信业目 前 面临的一大难题;其次,由于电 信传统业务的发展已 趋极限,不可能再有很大的市场空 间可以开拓,并且由 于竞争的结果,传统业务己 无很大的利润可言,因此拓展新的业务 沈阳 工业大学硕士学 位论文 将成为电 信新的经济发展和利润增长点的方向 ;最后,由 于网络技术的迅猛发展, 各种 新的 技术不断涌现,使得提高服务质量,满足顾客的需求成为可能;顾客希望有一个快 捷、 方便、 灵活和安全的系统。因 此利用现有的先进技术对国内电 信的软硬件的 更新提 上了日程。 随着电 信现有应用的不断扩充和新的业务的不断增加,电 信业务系统又面临 着一个 新的 危机:由 于许多业务应用程序可能由 不同的公司开发,它们可能需要在网 络的异构 平台上运行,在这种异构的环境中,不但存在多种硬件系统平台,而且还包括运行在这 些硬件平台上的各种系统软件以及风格不同的用户界面。此外,这些硬件系统平台还可 能采用不同的网 络协议和网 络体系结构连接,由 此带来的问 题也越来越多; 不同的 硬件 平台,不同的网络环境,不同的数据库之间的互操作性,多种应用模式并存, 系统效率 过低;传输不可靠,数据加密和开发周期长,维护困难以及还存在开发多种系统的风险 和成本高的问题。这些问题的解决单纯依赖传统的系统软件或工具软件己经难以 满足要 求,因 此在操作系统和网络之上,各种电 信业务程序之下提供一个系统软件平台,从而 在该平台上构建各种应用,满足电信对业务的伸缩性和可扩展性的要求己经提上日 程。 为了解决这一问题,中间件系统应运而生。 1 .5 本文所做的 工作 本文最终目 标是研究交易中间 件是如何解决分布式事务即全局交易在跨网 络、跨平 台的计算机系统下,保持事务的一致性。同时需要解决数据通讯中存在的低效率、不可 靠、低安全性、兼容性差等问题。针对分布式应用中存在的问题,本论文主要做了以下 几方面的工作: ( 1 ) 在综合分析 x / o p e n d t p模型的 基础上,研究了国内 外交易中间 件技术方面 的 一些最新学术和应用成果, 对当 前 较为成熟的各种交易中间 件技术加以比 较, 分析了 其功能和实现上的优劣。设计并实现一个符合d t p 模型的交易中间件系统。 ( 2 )针对交易系统的具体特点,在分析客服系统的特殊要求的基础上,研究了 其 设计和实现上存在的有关问 题。给出了 解决交易完整性的思想。 ( 3 ) 简述了 交易中间 件定义、现状和未来的发展,针对当前分布式应用系统中 存 在的通讯问题,提出了有效的解决办法。 沈阳工业大学硕士学位论文 c 4 ) 构建了 一个电信客服系统的应用实例,将该中间件与实际 应用进行了有机的 结合。 ( 5 )在分析了本论文设计的交易中间件的特点、优势及应用效果的基础上、客观 的指出了该系统还存在的不足及有待进一步解决的问题。 沈阳工业人学硕士学位论文 2 分布式处理模型的 标准和规范 本章主要介绍 x / o p e n组织的分布式事务处理模型 ( d t p ),并重点讨论了事务管 理 ( t m ) 模块。同时简要说明了t m 与应用程序 ( a p )之间的接口 一t x以 及r m同t m 之 间的扩展接口x a o 在 1 9 9 6 年, x / o p e n公司 和开 放软件基金会合并 组建了 国际 开 放系 统组织, 其缩 写为x / o p e n . x / o p e n主 要为网 络计算和分 布式 应用 创建开 放的 标准, 它被大多 数的 国 际 硬 件 生 产 厂 家 及 软 件 提 供 商 所 认 可 1 1- 14 1 . x / o p e n 提出 的d t p 模型 是 建 立分 布式 处 理环境的国际标准。 2 .1 x 阳p e n d t p 模型 本节主要介绍 d t p模型内部各模块及相互关系。d t p支持同步和对等的分布式应 用,并保证在其上的一个工作单元 ( 即事务)能可靠的在多个开放的平台上完成。d t p 的关键是必须有一种方法可以知道事务在任何地方所做的所有动作, 提交或回滚分布事 务的决定必须统一 ( 全部提交或全部回滚)。例如,在一个事务中可能更新几个不同的 数据库, 对数据库的操作发生在分布系统的不同地方, 但必须全部被提交或回滚。此时 一个数据库对自己内 部进行的提交不仅依赖其本身的 操作是否成功, 还要依赖与全局事 务相关的其它数据库的操作是否成功, 如果任一数据库的任一操作失败, 则参与此事务 的所有数据库所做的所有操作都必须进行回滚。 如图 2 . 1 所示, x / o p e n d t p 模型由以下成员模块组成:a p , r m , t m 和c r m 。图 中的箭头表示模块之间的接口,箭头的方向 表示控制转移的方向。一般而言,常见的事 务管理器 ( t m )是交易中间件,常见的资 源管理器 ( r m ) 是关系数据库,常见的通信资 源管理器 ( c r m )是消息中间件,本文中的交易中间件就属于事务管理器。 沈阳工业大学硕士学位论文 应用 ( a p ) rm a勿x直n 41 1 i ts r pc i cp lc r m 辣管理翻 t m 交易管理圈 xa今 _ c r m 讯管理 图2 . 1分布式事务处理 ( d t p ) 模型 2 . 1 . 1 d t p 各模块的 简 要说明 ( 1 ) 应用 程 序( a p p l i c a t i o n p r o g r a m ) 应用程序职责:建立和界定事务;传播事务上下文;通过资源管理器操作数据。应 用程序 ( a p )由应用程序开发者编写,它们是应用开发者用子实现商务事务的 程序,用 于实现最终企业用户的需求。每个 a p都表示一系列的对某些资源的操作,比如数据 库。一个 a p定义了全局交易的开始和结束, 在交易中访问 数据和决定提交或回滚交易 ( x / o p e n d t p标准采用全局交易 代替分布式交易这个术语)。当两个或更多 a p在 通过c r m 进行通讯时, x / o p e n d t p 模型支持三种a p 到a p 的通讯接口 模式, 分别为 t x r p c , x a t m i 和c p i -c 接口。 ( 2 )事务管理器 ( t m) 事务管理器职责:建立和维护事务上下文; 维护一个事务和特定的资源间的 关联; 发起并指挥两阶段提交和恢复协议;在开始两阶段提交和恢复过程之前向应用做同步呼 叫。 t m是 x / o p e n d t p的 核心,主要职责是为应用构件建立事务,实现同资源管理器 的二阶段提交或恢复协议,保证分布式交易的完整性和原子性;同时能完成交易请求的 分 解、 转发、 优先级 调 度和监控, 保证系统的 负 载平衡, 为d t p 系统的 容 错性, 安 全性 和分布式处理提供实质性的基础。在d t p模型中,只有 t m是d t p开发商必须提供的。 沈阳工业大学硕士学位论文 利用其t x , x a 接口, 可开发出 适用于各种平台各种应用的服务。所以t m 是一种交易中 间件。 ( 3 )资源管理器 ( r m ) 资源管理器职责;向事务服务器应征资源;参与两阶段提交和恢复协议。资源管理 器是一个管理持久和稳定的数据存储系统的模块,并且参与同交易管理器的两段提交和 恢复协议。r m包括三部分: s e r v e r ( 服务程序), r m s( 资源管理系统)和 r( 资 源)。 s e r v e r 提供a p 所需要的服务,一般和a p 同 样由应用程序开发者编写。r m s 常常 指数据库管理系统 ( d b m s )或文件系统 ( f s )等共享资源的管理系统。它一般由 独立厂 商提供。r 是由r m s管理的各种共享资源,如数据库 ( d b )、文件、打印设各和磁带备 份等。 ( 4 )通讯资源管理器 ( c r m ) 通讯资源管理器职责:向 交易管理器, a p 提供通讯服务。c r m 负责管理通讯资源。 一般来说,c r m就是消息中间件,它为其它模块提供相关通讯服务,如业务数据的传 输、 事务管理模块之间的 通讯, 通过它屏蔽底层网 络细节。在d t p 模型中o s i t p 模块 为 c r m提供必要的通讯服务,c r m采用如下接口 支持全局交易:a p和 ,r m之间采用 t x r p c , x a t m i 或c p i - c 通讯接口 ; t m 和c r m 之间的x a 十接口 ; o s t t p 和c r m 之间的 x a p -t p接口。c r m可以支持多种网络模式 ( 电话网,光纤网等)和协议 ( t c p / i p , x 2 5等),它允许一个全局交易扩展到另一个 t m上面。对于 c r m的具体实现模型,x / o p e n并没有强制进行规定,以 便为各厂商在各软件平台上的开发提供最大灵活性,但 其软 件接口 必须服从上述的 接口 规范, 并 提供相 应的a p i . ( 5 )通讯协议栈 ( c o m m u n i c a t i o n p r o t o c o l s t a c k o s i -t p ) 通讯协 议栈 提供了 较低层次的 通讯服务, 用以 支持c r m 或分 布式 应用。 一般为t c p / i p 协议,o s i 模型等。 2 . 1 .2 d t p 模块间的 接口 在下列接口前的标号对应于图2 . 1 中的接口标号: 沈阳工业大学硕士学位论文 ( 1 ) a p -r m : a p -r m接口允许 a p操纵资源 ( 数据库),遵循 x / o p e n d t p模型 的接口 有标准查询语句 ( s q l )。由图 2 . 1知,d t p模型同时支持非全局的交易,通过 s q l 可以进行本地数据库交易。 ( 2 ) a p - t m : a p - t m 之间的 接口( t x )允 许a p 进行分布式交易处理, t m 接收a p 的 请求后就开始同多个r m 和t m 按两段式提交协议处理交易。 例如, a p 调用t x b e g i n ( ) 通知t m要开始一个全局交易, 在所有准备工作完成后, t m返回值告诉a p t x 一 b e g i n ( ) 调用是否成功。 ( 3 ) t m - r m : t m - r m的 接口( x a ) 允许t m 对多个r

温馨提示

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

评论

0/150

提交评论