已阅读5页,还剩59页未读, 继续免费阅读
(计算机应用技术专业论文)基于p2p的高性能集群中间件设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江大学硕士学位论文摘要 摘要 钱塘中间件平台软件( j t a n g m i d d l e w a r es e r i e s ) 是一个人型集成化中间件平台软件, 为了提供良好的可扩展性,有必要设计与实现一套高效的集群服务。p 2 p 技术中每个节点处 于平等地位的核心思想和集群是一致的,将传统的集群底层的组播方式改为效率、速度更高 的p 2 p 方式对于集群的发展具有重要意义。论文基于p 2 p 技术实现高性能集群服务,以实 现多个j 2 e e 应用服务器的协同服务,使钱塘中间件平台满足人吞吐量数据处理的需要,具 有重要的t 程意义和研究价值。 论文以基于p 2 p 方式的j t a n g 中间件集群应用为设计目标,总结了集群底层节点间通 讯的特点及影响p 2 p 架构性能的因素,分析了各种不同的p 2 p 拓扑结构的优劣,比较了各 种d h t 协议的异同,研究了i n t e m e t 拓扑结构的理论和定律。在此基础上,提出一种高效、 可行的p 2 p 拓扑结构,以适应j t a n g 集群的特点,并尽可能综合各种p 2 p 拓扑结构及d h t 协议的优点,从而提山了双超级节点d h t 查询的实现方法,并研制开发了相关的原型系统。 论文的主要成果是提出了双超级节点d h t 查询结构。它结合了半分布式拓扑和结构 化拓扑的优点,在传统的半分布式拓扑结构基础上采用了坡超级节点方式,以提高服务稳定 性,并且在超级节点层采用d h t 查询,具体采用c h o r d 协议,减少查询跳数,且每个“簇” 的两个超级节点同时进行上行查询和下行查询,符合集群的应用特点,可实现集群底层通讯 的应用。试验数据表明:在组播对象较小时p 2 p 实现较j g r o u p 、j g r o u p s 没有任何优势,但 当对象逐渐增大时,p 2 p 的优势开始显现出来;同时,它与单超级节点群内组播时的时间和 效率接近,即多维护一个超级节点在效率上所花的代价是极其有限的,但它却极大的提高了 集群服务的稳定性。 关键词:点对点,集群,双超级节点,分布式哈希表,c h o r d 协议 浙江大学硕士学位论文 a b s t r a c t a b s t r a c t j t a n gm i d d l e w a r es e r i e si s al a r g e - s c a l eg e n e r a lm i d d l e w a r ep l a t f o r m ,w i t hw h i c hi s n e c e s s a r yt od e s i g na n di m p l e m e n tah i g h - p e r f o r m a n c ec l u s t e rs e r v i c ep r o v i d i n ge x p a n s i b i l i t y t h ee q u a l i t yt h o u g h to fb o t hp 2 pa n dc l u s t e rt e c h n o l o g yi sc o n s i s t e n t ;h e n c e ,t h ei m p o r t a t i o no f p 2 pm e c h a n i s mw i t hh i g h e re f f i c i e n c yt oc l u s t e rw i l lb em e a n i n g f u lf o rd e v e l o p m e n to fc l u s t e r t e c h n o l o g y t h i sa r t i c l em a n a g e si m p l e m e n t i n gh i g h - p e r f o r m a n c ec l u s t e rs e r v i c eb a s e do np 2 p m e c h a n i s m ,i no r d e rt oe n a b l em u l t i p l ej 2 e ea p p l i c a t i o ns e r v e r st ow o r kc o n c u r r e n t l y , s a t i s f y i n g t h en e e do f m a s sd a t ap r o c e s s i n ga n dh a v i n gs i g n i f i c a n tm e a n i n g w i t ht h eg o a lo fi m p l e m e n t i n gp 2 p - b a s e dc l u s t e rs e r v i c eo fj t a n gm i d d l e w a r ep l a t f o r m t h i sa r t i c l es u m m a r i z e st h es p e o i a l i t yo fb o l t o mc o m m u n i c a t i o nm e c h a n i s mo fc l u s t e ra n dt h e i n f l u e n c ef a c t o r so fp e r f o r m a n c eo fp 2 ps t m c t u r e a n a l y z e sd i f f e r e n tp 2 pt o p o l o g ys t r u c t u r e sa n d d h tp r o t o c o l sa n dd o e sr e s e a r c ho nt h e s i sa n dl a w so fi n t e r n e tt o p o l o g y b a s e do na l la b o v e ,t h e a r t i c l ep r o p o s e saf e a s i b l eh i g h p e r f o r m a n c ep 2 pt o p o l o g ys t r u c t u r e w h i c hi sd o u b l es u p e r - n o d e t o p o l o g yw i t hd h tl o o k - u p ss t r u c t u r ei n v o l v i n ga d v a n t a g e so fd i f f e r e n tp 2 pt o p o l o g i e sa n dd h t p r o t o c o l sa n df i t t i n gf o rj t a n g sc l u s t e rm o d u l e ,a n dt h e ni ti m p l e m e n t st h ep r o p o s i t i o n t h em a i na c h i e v e m e n to f t h i sa r t i c l ei st op r o p o s et h ed o u b l es u p e r - n o d et o p o l o g yw i t hd h t l o o k u p ss t r u c t o r e i tt a k e sa d v a n t a g e so fd e c e n t r a l i z e ds t r u c t u r e dt o p o l o g ya n dp a r t i a l l y d e c e n t r a l i z e dt o p o l o g ya n di m p o r t sd o u b l es u p e r - n o d ei n n o v a t i o nb a s e do nc o m m o np a r t i a l l y d e c e n t r a l i z e dt o p o l o g y , i no r d e rt oi m p r o v es t a b i l i t yo f c l u s t e rs e r v i c e ,m e a n w h i l e ,i tt a k e su s eo f d h tl o o k u p sa tt h es u p e r - n o d el e v e lw i t hc h o r dp r o t o c o la c t u a l l y , s oa st or e d u c el o o k - u pt i m e s b e s i d e s ,b o t ho ft h es u p e r - n o d e si no n e “c l u s t e r l o o ku pu p w a r d sa n dd o w n w a r d sc o n c u r r e n t l y , a l jo fw h i c hi s d e s i g n e de s p e c i a l l y f o rc l u s t e ra p p l i c a t i o n i no r d e rt oi m p l e m e n tb o t t o m c o m m u n i c a t i o nm e c h a n i s mo fc l u s t e rm o d u l e t h et e s ts t a t i s t i c ss h o w st h a tt h i sp 2 p i m p l e m e n t a t i o nh a sn oa d v a n t a g eo v e rj g r o u pa n dj g r o u p sw h e nt r a n s f e r r i n go b j e c t sa r en o t q u i t el a r g e ,b u to p p o s i t e l yw h e nt h e yb e c o m e sl a r g e r ;m e a n w h i l e ,i tc o s tn e a r l yt h es a m et i m et o t r a n s f e rs a m eo b j e c t sw i t hs i n g l es u p e r - n o d es t r u c t u r e ,w h i c hi st os a y , i tp r o v i d e sm u c hh i g h e r s t a b i l i t yw i t hl i t t l ec o s to nm a i n t a i no n em o r es u p e r - n o d e k e y w o r d s :p 2 p ,c l u s t e r , d o u b l es u p e r - n o d e ,d h t , c h o r dp r o t o c o ,i i 浙江大学硕士学位论文图目录 图3 - 1p 2 p 系统结构。 图目录 图3 - 2 中心化拓扑图1 9 图3 3 全分布式非结构化拓扑图2 0 图3 - 4 半分布式拓扑图2 2 图3 5 全分布式结构化拓扑图2 3 图3 - 6 双超级节点d h t 查询拓扑图。5 1 图4 - 1 度数和直径之间的渐进曲线关系4 0 图5 - 1 集群管理界面4 2 图5 - 2 基于p 2 p 的集群底层实现在整个集群体系结构中的应用图示4 4 图5 3 双超级节点d h t 查询拓扑图。4 7 图5 4 双超级节点d h t 查询实现的简要类关系图。5 0 浙江大学硕十学位论文 表目录 表目录 表3 1 各拓扑结构的性能比较2 4 表3 2 某节点的d h t 路由表2 5 表3 3 双超级节点d h t 查询结构与其他传统拓扑结构的比较3 2 表5 1j t a n g 集群模块功能点4 3 表5 2j t a n g 集群模块及其类的设计细节。4 5 表5 3j t a n g 集群p 2 p 子模块及其类的设计细节4 7 表5 4 系统测试环境配置表5 l 表5 - 5j g r o u p 、j g r o u p s 、p 2 p 集群底层实现的性能比较5 2 表5 6 单、双超级节点拓扑结构的性能比较5 3 浙江大学硕上学位论文第一章绪论 1 1 引言 第一章绪论 随着中间件( m i d d l e w a r e ) 在越来越多的大型企业甚至中小企业中的广泛 应用,它在企业信息化的进程中担负着越来越重要的作用,经济效益也迅速显现。 随之而来的是,中间件技术也得到了前所未有的飞速发展,许多公司和研究机构 开始致力于中间件平台的研发。 浙江省科技厅组织浙江大学和多家i t 公司研发的重大基础中间件项目 一j t a n g ( 钱塘) 中间件是一个基于j 2 e e 实现的自主开发的基础中间件平台。由 于该平台目前仅是一个单机平台,对于中小应用的支持没有问题,但对于大型企 业应用,出现性能瓶颈,且对于服务的可靠性和稳定性的支持有限,有必要引入 集群模块,以实现多服务器的协同服务,使整个j t a n g 中间件的应用更加稳定、 满足大吞吐量的要求。传统集群模块的底层实现主要采用了基于缀播的j g r o u p 方式,用简单的组播等方法实现同一集群下各节点的同步。这在节点数较少的情 况下可以满足企业用户的需要,若是应用于大型企业,节点数目在几百个几千个 以上,寻求一种更新更快的集群底层实现,就显得有必要了。 在寻找更好的集群底层实现方式的过程中,近年来发展迅速并日渐得到广 泛应用的p 2 p ( p e e rt op e e r ) 技术引起了注意。p 2 p 中每个节点处于平等地位 的核心思想和集群是一致的。在p 2 p 的通讯中,每个节点既是被服务者也是服务 者,极大的扩展了网络的应用,提高了文件下载、搜索、视频浏览等许多网络服 务的速度,很大程度上解决了服务器性能和带宽限制所造成的瓶颈,对于网络应 用有划时代的重要意义。将集群底层的组播方式改为效率、速度更高的p 2 p 方式 对于集聪的发展将是可能的而且是有重大意义的。 因此,论文主要讨论与j g r o u p 完全不同的p 2 p 方式来更好的实现集群的底 层通讯模式,并应用于j t a n g 中间件的更高版本中。 1 2 中间件技术简介 中间件( m i d d l e w a r e ) 是位于操作系统与应用系统之间,可屏蔽底层操作 系统、网络、数据库以及事务处理等的异构性和复杂性,简化网络分布应用的开 发、管理和维护。中间件平台抽取并实现了大量的公共功能组件,提供了方便的 调用和共享方式。这样可大大提高各应用系统的可重用性,各应用系统通过共享 浙江大学硕上学位论文第一章绪论 大部分的公共功能组件。应用系统的开发人员只需集中精力于特有的业务逻辑和 个性化用户界面的开发,提高了新开发应用系统的速度和质量。 中问件技术从上世纪8 0 年代末到现在,技术上和应用上均取得了很大发展, 得到了学术界和工业界的青睐,目前相关的研究很多,领域也很广阔,已成为分 布式系统的主流技术之一。随着企业应用的需求和规模不断扩大,传统中间件所 面临的网络分布计算环境发生了很大的变化,大多已不再是中间件开始产生时的 典型企业计算环境,现在更多的是面向i n t e m e t 的w e b 计算。 现在中间件技术遇到了很多问题,这也是很多需要研究的课题,如需支持多 种客户类型、服务器本身能力的不足、用户数量不可估计、大规模的并发用户访 问、分布式事务、对集群的支持、与已有系统的无缝集成等等。解决这些问题己 成为w e b 计算和中间件领域的一些热点和方向。 目前中间件平台主要是基于j 2 e e 的解决方案和m i c r o s o f t 解决方案两大类。 基于j 2 e e 的解决方案是s u n 公司提出的开发、部署、运行和管理基于j a v a 分靠 式应用的标准平台。j 2 e e 可以利用j a v a 语言自身具有的跨平台性、可移植性、 对象特性、内存管理等方面的良好性能,为应用服务器的实现提供一个完整的底 层框架。除了应用服务器的基本特性以外,j 2 e e 应用服务器包括e j b 、j d b c 、 j n d i 、r m i - i i o p 、j c a 、j t s j t a 等基本模块,提供e j b 部署、数据源管理、命 名查找、事务管理、验证等底层服务,能够与业目前流行的i d e ( 如j b u i l d e r 、 e c l i p s e 、v i s u a l c a f e 等) 集成。j t a n g 中间件便是采用j 2 e e 的解决方案实现的 服务平台,并且在j t a n 9 2 0 以后的版本中提供了除以上基本功能之外的构件 ( c o m p o n e n t ) 、集群等高级服务。 1 3 集群概述 1 3 1 集群发展 众所周知,如今的硬件发展相当迅速,c p u 随着摩尔定律不断更新发展, 近年来双核c p u 也随之出现,但这个变化也说明了硬件发展的一种新思路,即 发展多核的协同运算可以更好的打破单核运算能力的瓶颈。同时,随着单机性能 瓶颈的出现,可以很清楚地看到,仅仅依靠提高硬件的c p u 主频等性能来提升 整个系统性能的作用非常有限的。并且频繁更新升级单机的性能意味着巨大的成 本。 在企事业单位系统的实际应用中,更好的让众多的单机节点协同运作,提 高响应速度,提高容错性,增强稳定性,提供比单个超级服务器更好、性价比更 浙江大学硕士学位论文第一章绪论 高的服务就成了一个急需研究的课题。 在这种背景下,集群( c l u s t e r ) 技术很自然的出现并迅速发展,应用于各 个方面,并且在中间件应用中的重要性和迫切性日益增加,因为一个成熟的基础 中间件不可能还是专注于单服务器的服务方式,在j t a n 9 3 0 版本中就将引入集 群模块。集群系统就是通过软件和网络把企业内部的单击节点连接起来协同运 作,对外提供一个统一的服务,同一集群名下的单机节点可以共享磁盘等存储设 备。多台计算机通过网络连接起来后组成个系统拓扑图,每个单机节点的地位 都是等同的。这样利用同一集群的多节点来分担系统的负荷,可以及时高效地满 足大量并发访问,消除单机响应处理的瓶颈。同时,集群技术能以低成本,快速 提高系统的性能,满足系统的需要。 1 3 2 集群分类 集群按照关注目标的不同可以分为两种:高性能科学群集和高可用性群集。 高性能集群( h i g hp e r f o r m a n c ec o m p u t i n g ) 是以解决复杂的科学计算问题 为目的的集群系统。主要是应对科学领域大规模的计算,解决复杂的科学问题。 集群通过对各单机的并行运算的处理,是整体性能达到超级计算机的水平。 高可用性集群( h i g ha v a i l a b i l i t y ) 致力于提供高度可靠的服务,高可用集 群通过冗余镜像备份保证集群整体服务的高可用。随着企业信息化的不断深入, 企业对于内部系统的稳定性、响应时间、运行性价比的要求使得高可用集群专注 于更好的使集群内各节点的负载相对均衡,同时单个节点的失效也不会影响到整 个系统。目前这一类集群在中小企业中的应用很多。当然,在实际的运用中,这 两种集群的技术也经常是结合在一起的。 1 3 3 集群意义 集群技术对于整个中间件平台的意义在于: 1 可靠性高。集群内的某一节点出现问题,其他节点同样可以提供服务, 包括硬件和软件层面的异常。 2 负载平衡好。可以使集群内的多个节点合理的分担负载,提高响应速度, 不易出现拒绝服务的情况( d o s ) ,服务稳定性好。 3 可扩展性好。集群可以随时根据系统需要添加节点或者删除节点。 浙江大学硕上学位论文 第一章绪论 1 3 4 集群的研究现状 第一个集群产品是d a t a p o i n t 在1 9 7 7 年开发的a r c n e t ,后来d e c 在8 0 年 代为v a x 、n m s 操作系统发布了一个v a x 集群,可以很好的应用于商业领域。 随着网络技术的发展成熟,集群计算机技术 :导到很大的发展和广泛的应用,包括 高可用性集群和高性能集群两个方面。 高可用性集群专注于提供可靠性的服务,当系统的某一节点崩溃后,冗余的 节点将激活并加入系统替换崩溃节点。因此一个高可用性集群至少有两个节点, 一个冗余的节点是另一个的备份。高可用性集群可以消除节点失效的影响,现在 软件产品有很多实现高可用性集群功能,比如l i n u x 下的l i n u x h a 项引“。 高性能集群更侧重性能上的提升,通常的做法是把客户请求的复杂的计算任 务分发到系统不同节点,通过不同节点的分工合作,高性能集群普遍适用于科学 计算。通常,高性能集群是用软件来实现并行计算,l i n u x 下的b e o w u l f 并行集 群就是一个很好的例子。 商业上已经有很多成熟的集群产品,比如m i c r o s o f t 的w i n d o w ss e r v e r t m2 0 0 3 e n t e r p r i s ee d i t i o n ,支持网络负载平衡( n l b ) 群集和服务器群集, s u n 公司开 发出一套j a v a 可靠包( j a v a a v a i l a b i l i t ys u i t e ) ,把应用程序和服务集群软件技术 加进到s o l a r i se n t e r p r i s es y s t e m 中,用户只要利用其中提供的开发工具,即可轻 松实现软件上的集群。 集群技术作为一门热门的技术,在全球里很多大学可开源组织设立了应用研 究项目,下面是一些研究和商业项目列表1 2 1 : 1 b e o w u l f ( c a l t e c ha n dn a s a ) ,u s a 2 c c s ( c o m p u t i n g c e n t r es o f t w a r e ) ,p a d e r b o m ,g e r m a n y 3 c o n d o r w i s c o n s i ns t a t eu n i v e r s i t y , u s a 4 d q s ( d i s t r i b u t e dq u e u i n gs y s t e m ) ,f l o r i d as t a t eu n i v e r s i t y , u s 5 e a s y a r g o n n e n a t i o n a ll a b 。u s a 6 h p v m h i g hp e r f o r m a n c ev i r t u a lm a c h i n e ) ,u i u c & n o wu c s b ,u s 7 f a r u n i v e r s i t yo f l i v e r p o o l ,u k 此外,还有很多基础软件比如中间件平台,也开始提供集群的功能,可以预 测在不远的将来,集群技术将会得到更大的发展,软件行业也会从中受益。 1 4 论文的研究目标与内容 在撕9 3 0 版本中对于集群的引入以及将来在更高版本中对于集群的改进 浙江大学硕士学位论文第一章绪论 使论文迫切需要讨论、设计和实现集群底层实现的改进甚至是彻底变革,论文主 要讨论以与当前流行的集群实现j g f o u p 完全不同的p 2 p 方式来更好的实现集群 的底层通讯模式,并且将来实际应用于j t a n g 的更高版本中。 目前不管是对于集群还是p 2 p 的研究正方兴未艾,集群和p 2 p 技术在不断 的应用中也在不断发现问题,不断改进和变革,研究的领域不断开展和深入。而 对于p 2 p 在集群中的应用更是一个较新的领域,相关的研究刚刚开展,虽然技 术还远没有完善和成熟,不免会遇到一些问题,但是未来的发展前景却很广阔。 在后文中将详细介绍集群技术背景、特点及底层实现中的问题,p 2 p 技术 的应用、分类、特点,以及具体的p 2 p 在集群中应用的研究、设计和实现等, 最后进行测试评价和提出改进方向。 1 5 本章小结 本章主要介绍了论文的课题来源,j t a n g 中间件项目中对于集群模块改进的 需求促成了对于种新的基于p 2 p 的集群中间件的研究,简要分析了中间件技 术的研究现状,随后介绍了集群技术的发展、分类及研究现状,最后阐述了论文 的研究目标,主要讨论以与j g m u p 完全不同的p 2 p 方式来更好的实现集群的底 层通讯模式,并应用于j t a n g 的更高版本中。 浙江大学硕十学位论文 第一章系统需求勺设计目标 第二章系统需求与设计目标 2 1j t a n g 中间件平台 2 1 1j t a n g 中间件背景及意义 项目的提出是面向我省制造业信息化工程、服务业电子化工程、电子商务、 电子政务等信息化工程,突破制约我省信息化发展的瓶颈,力求为我省信息化应 用系统的开发、集成和实施提供一套完备、具有特色、拥有自主知识产权的中间 件平台,形成产业化,辐射我省大多数软件企业,提升我省应用软件开发企业的 核心竞争力。整个项目将研制开发一个基础服务平台、四个应用中间件平台,并 逐步形成产业化;在4 至6 家软件企业中进行l o 项左右的应用软件示范,辐射 浙江省内多家软件企业;形成1 个中间件辐射联盟。 j t a n g 中间件平台( j t a n gm i d d l e w a r es e r i e s ) 是2 0 0 4 年浙江省科技厅重大 科技攻关项目支持下的研制成果,该项目由浙江大学、国软公司、杭州信雅达、 浙大网新、恒生等浙江省内龙头科研机构及软件企业共同承担,该平台是一个完 全拥有自主知识产权的中间件平台软件产品,包括一个j 2 e e 应用服务器j t a n g s e r v e r ( 提供e j b 、j m s 、j m x 、j a c c 等服务) ,一套面向上层应用系统的增值 服务j t a n gs e r v i c e ,以及开发工具集成工具j t a n gi d e 、配置管理工具j t a n g c o n s o l e 。 2 0 0 6 年8 月平台通过i n t e l 公司的专业测试,结论认为:平台“是一个纯j a v a 开发,支持j 2 e e l 4 相关标准的企业级应用服务器。该应用服务器的功能、性 能和稳定性能够可靠地支撑大中型用户的企业级应用,能够方便支持j 2 e e 架构 的典型应用软件的开发、部署、运行和监控,能够满足应用系统长时间高效、稳 定运行的要求,可为应用软件的快速开发提供了一个高效的开发和运行平台。” 以上摘自i n t e l 公司钱塘中间平台软件测试总结报告。 2 0 0 6 年9 月2 6 日平台通过了省科技厅主持的项目验收,得到了与会专家的 高度评价,专家认为:“自主知识产权的钱塘中间件平台软件( j t a n g m i d d l e w a r e s e r i e s ) 在服务器软件体系结构、性能优化和安全服务等方面取得了多项技术 突破,通过了英特尔公司及浙江省电子产品检验所测试,产品的功能、性能和稳 定性能可靠地支持大中型用户的企业级应用,能够支持j 2 e e 架构的典型应用软 件开发、部署、运行和监控,能够满足应用系统长时间高效、稳定运行的要求, 为企业应用软件系统提供了良好的平台支持。” 浙江大学硕士学位论文 第一章系统需求与设计目标 在技术开发和产品推广互动的原则指导下,目前j t a n g 在多家企业得到了 一定的示范应用。浙大网新的嘉兴市公共事务管理系统,信雅达公司的国家级重 点新产品s u n f l o w ,恒生公司市场份额占全国第一的证券交易平台,新中大公司 的公共财政系统,于2 0 0 5 年下半年分别移植到了j t a n g 平台上,实现了连续三 个月的稳定运行。此外浙江省近十家软件企业也准备于近期把自己的产品移植到 j t a n g 平台上。这些示范应用表明j t a n g 产品已是一个可稳定运行的中间件平台, 为本项目的产业化奠定了良好的基础技术。 2 1 2j t a n g 中间件技术特点 钱塘中间件平台,是一个企业级大型、通用的中间件平台,是一个在功能、 性能、实用性、稳定性、安全性以及可扩展性等方面能够满足电子政务、电子商 务、企业信息化以及国防工业等敏感部门信息化建设需求的大型中间件产品。钱 塘中间件平台性能稳定、功能完善,可广泛应用于各类企事业单位、政府机关, 尤其是国防、军工等事关国家政治、军事、经济安全的各要害单位的信息化建设。 钱塘中间件平台的技术特点主要有: 1 符合j 2 e e 国际标准,具备大规模并发处理能力的基础中间件平台系统。 钱塘中间件平台提供的服务符合国际规范标准技术,如j d b c 3 0 、e j b 2 1 、j m s l 1 等,支持w i n d o w s 、l i n u x 以及s o l a r i s 等多种主流操作系统平台,具有很好的跨 平台支持能力。钱塘中间件平台采用高效的多线程体系结构以及优化的并发控制 机制,系统资源使用高度优化,支持成百上千用户的并发访问,e j b 服务5 0 0 个并发性能相当于w e b l c g i c 性能的9 5 ,j m s 服务比w e b l o g i e 提高3 0 ,完 全可以支持电子政务等大型应用软件的性能需求。 2 基于a o p 及i o c 技术的微内核软件架构。j t a n g 大量采用了 a o p ( a s p e e t - o r i e n t e dp r o g r a m m i n g ) 拦截器的编程思想,采用可插拔的系统架构, 支持用户自定义地扩展和实现各种系统功能,满足企业各种应用环境下的需求。 3 丰富的增值服务及行业解决方案。作为一个中间件平台软件,j t a n g s e r v e r 除提供e j b 容器、j m s 、j n d i 、数据源、j m x 、i d e 集成、部署监控工具 等各项基本的j 2 e e 应用服务外,还提供六类增值服务( 安全可信、数据访问、 数据分析、流程控制、集成共享、数据展示) 和四个行业中间件平台( 面向社保 行业中间件、面向金融证券行业中间件、面向电子影像行业中间件、面向企业信 息化的中间件) 。 4 提供了多层次全方位的安全机制。为了适应国家电子政务及电子商务等 敏感部门的要求,j t a n gs e r v e r 提供了全方位的安全解决方案,包括j a c c ( 提 浙江丈学硕士学位论文第二章系统需求与设计目标 供声明式安全服务) 、j a a s ( j a v a 认证验证服务) 、j c a ( 提供加解密算法) 、p m i ( 提供企业级权限管理架构,支持身份认证、访问控制) 、s s o ( 支持b s 、c s 系统的单点登录服务) 、s s l ( 安全套接字协议) 、c a s e r v i c e ( x 5 0 9 数字证书服 务) 、l o g s e r v i c e ( 企业级日志服务) 等,这些服务具有自主知识产权,无任何安 全后门。 2 2j t a n g 集群模块的需求分析 2 2 1 集群技术的研究课题 目前,集群技术最关注的课题主要是负载平衡( l o a db a l a n c e ) 和失效转移 ( f a i l o v e r ) ,以及在底层通讯方式上的改进。这些也是集群所要实现的基本功能。 2 2 1 1 负载平衡 负载平衡在集群中主要是负责请求调度的工作,使集群内各节点能够较均 衡的分担负载,它是实现集群的关键核心技术之一。一个良好的负载平衡策略可 以通过请求的重新定向,把请求分配到动态负载量相对比较小的节点,使集群系 统中各节点较均衡的分担负载,从而改进系统的整体性能。 1 一个良好的负载平衡策略应该做到以下方面: 2 提高服务器响应速度 3 提高整个系统吞吐量和并发性能,提高系统资源利用效率 对于网络结构复杂的集群系统,负载平衡策略应尽量使服务就近提供,实 现地理位置无关性 3 1 负载平衡策略有静态平衡和动态平衡两种1 4 。静态负载平衡策略不收集客户 端和服务端的信息,每次的负载平衡算法都是固定的,当然,负载平衡的决策所 需的时间和资源也相对较少。而动态负载平衡策略需要动态的根据各节点的负载 情况进行动态决策,这样更符合实际的运行负载,更公平一些,但同时收集和维 护动态信息需要额外的时间和资源。一般来说,对于中小企业的节点个数不是太 多、变化不大的集群系统,静态负载平衡策略更合适一些。反之,应采用动态负 载平衡策略。 现在常用的静态负载平衡算法有轮询算法,随机算法,基于d n s 算法等, 而常用的动态的负载平衡算法有客户端进行的i p 选择算法,端口选择算法等, 服务器端进行的权重轮询算法,最少连接数均衡算法,处理能力均衡算法【5 l 等。 浙江大学硕士学位论文 第二章系统需求与设计目标 一般来说,动态负载平衡算法常采用服务器端进行的方式,这样对于客户端的要 求尽量较少。 2 2 1 2 失效转移 失效转移是指,在集群中能够检测到任意节点出错无法提供服务时,会及 时把相应请求以及以后发往该节点的请求转移到其他节点上进行处理,同时把该 节点出错的情况在其他节点上的拓扑图中更新。 要实现失效转移,就必须提供全局会话状态i d 的支持,这样节点间才能对 会话状态进行备份和处理。会话状态的备份,分为数据库持久化备份和内存备份。 数据库持久化备份的优点是| 6 1 : 1 实现相对简单 2 会话状态信息可以转移到任何节点 3 系统崩溃,集群系统可以恢复所有的会话状态信息 而内存备份的优点是备份效率较高,不会发生频繁的数据库事务操作,两 者优缺点互为补充。 2 2 1 3 集群底层通讯的实现 对于集群底层实现,目前的主流选择主要有j c r f o u p s 、j g r o u p 的组播方式, 而论文将要详细讨论如何以更加高效的p 2 p 方式实现,不论采用哪一种实现方 式或者具体到p 2 p 方式采取怎样的拓扑结构,应充分考虑到集群内节点间的通 讯特点。 一个完美的集群系统的性能应当是所有节点性能的总和,集群系统对外的 应该是一个统一的服务端,集群系统的建立和运作不需要客户端改动来提供额外 的支持,客户端也不需要了解集群系统里面的内在运行机制。对于客户端来说, 集群系统里面的节点是透明的。 同时,集群内节点间的通讯的特点有: 1 频繁。集群内的命名空间的查询、绑定等是经常性的。 2 数据量小。集群内的命名空间的查询、绑定等数据量不大,占用带宽小。 3 响应时间要求高。集群内频繁的小数掘量的操作显然对于响应时间的要 求要比大数据量的p 2 p 系统高。 4 。可靠性要求高。数据要求准确,容错性要好。 5 可扩展性、可维护性要求低。这是因为与一般的p 2 p 系统相比较,集群 浙江丈学硕上学位论文第二章系统需求设计目标 的网络拓扑结构较稳定,集群内动态增加或删除节点的情况较少一些,动态增加 的节点一般在较长一段时间内不会变动,而删除节点的情况往往是由于相应节点 出错所致,但是节点的变化还是要考虑在内。 6 新节点的发现算法要求较高。新节点的加入应该迅速通知到集群内其他 节点。 7 不需要复杂查询。与大多数p 2 p 系统不同,对于集群系统,命名空问的 绑定、查询关键词的模糊查询等所用到的关键词是明确的,因此不需要对模糊查 询、复杂查询提供支持。 对于集群内节点间通讯的以上这些特点,对于p 2 p 方式对集群的设计实现 中将会充分考虑和详细讨论。 2 2 2j g r o u p 、j g r o u p s 及p 2 p 方式的集群底层实现的分析比较 2 2 2 1 j g r o u p j g r o u p 是在目前j t a n g 中间件的集群中采用的底层实现方式。它是基于分 布式对象的组技术的一种综合技术。j g r o u p 支持基于组对象的程序范例,从而 使得基于复制的高性能和高可靠性得以顺利实现。j g r o u p 是基于j a v a 语占的。 j g r o u p 的主要特点是:客户端对于组对象的操作以及得到的反馈是必须通 过调用外部组方法引入( e g m i ) 这个工具实现的。因为j g r o u p 隐藏了组对象的 应用服务,无法被客户端直接调用。而对于非组对象的单机对象服务,是可以直 接调用的,不需要通过e g m i 。同时,这些组对象服务在内部是通过内部组方法 引入( i g m i ) 来实现状态的分布式应用,它在需要时是被e g m i 调用的,从而 实现组对象同步性。j g r o u p 很好的支持了失效转移和错误恢复机制。j c - r o u p 的 另一个特点是综合了e g m i 和 g m i 的语义。使得客户端所需求的服务级别有一 定的可测量性。 j g r o u p 作为一个组对象系统,对于将信息从组内一个节点信息复制到其他 节点以保持同步,以及某节点出错后重新恢复相应信息的机制,需要借助自动复 制管理的框架( a r m ) 来实现。a r m 是一种复制管理工具。它提供了一些简单 的接口,通过管理客户端可以实现在集群系统中安装和移除组对象。a r m 会收 集和解释一些失效的集群消息,这些消息是通过集群的组通讯系统发出的。这些 信息可以用来触发组节点的恢复行为,使得系统在某些节点失效后能够重建。 渐江= 学硕上学位论文 第二章系统需求与设计h 标 2 2 2 2 j g r o u p s j g r o u p s 也是基于纯i a v a 语言编写的开源代码。它的工作模式基于i p 多播, 同时提供了一个灵活的协议栈,可以让用户根据自己不同的需求增加一种或多种 协议,在可靠性和群组成员管理上进行扩展。 它的主要特点是灵活的协议栈:j g r o u p s 的协议栈允许根据实际需要定制多 种协议,以便集群内节点的通讯满足各种协议所带来的规范性。这些协议互不依 赖,可以增删、修改,因此增加了系统的可维护性和模块化程度。j g r o u p s 支持 u d p 、t c p 的单播,也支持口多播,但i p 多播是不可靠的,多播地址的接受者 并不被作为集群成员对待,而j g - r o u p s 扩展了可靠的t c p 单播消息传输到多播 的设置中,提供了基于i p 多播的群组成员管理和可靠性。 另外,在灵活性的同时,j g r o u p s 具有以下可靠性: 1 重传丢失信息 2 信息分拆发送,在接收端重新组装 3 消息的收发满足f i f 0 ,顺序不变 4 消息收发的原子性,其他节点要么都收到要么都不会受到,始终保持同 步 5 集群节点的加入与删除及时更新 2 2 2 3 j g r o u p 和j g r o u p s 的比较 j g r o u p 和j g r o u p s 名字相像,都是基于j a v a 语言的开源的集群底层实现。 它们都有一个组对象的概念,支持集群节点的同步性等一般性要求。在将信息从 一个节点传递到其他节点的过程中,j g r o u p 用到了a r m 自动复制的管理框架来 进行状态和对象的复制,而j o r o u p s 则采用了基于i p 多播的方法在集群内传送 相应信息,j g r o u p s 对于新节点的加入可以动态的侦测更新,虽然方法有所不同, 但在复制过程中都只是由一个节点发送信息或进行状念复制,其他节点并没有参 与到这个过程中,这是与论文后面将要讨论的p 2 p 实现方式的根本不同。对于 节点个数较少的小型集群系统。j g r o u p 和j c r r o u p s 的方式是可行的也是较快捷 的,但是对于大中型企业来说,如果应用一个大型集群系统,节点数可能有几千 个,甚至上万,这时通过新的p 2 p 方式来进行就是相当有必要的了。 另外,在实际应用上,j c r r o u p s 加入了j b o s s 组织,作为集群的底层通讯 实现被引入了j b o s s 中,由j b o s s 提供有偿技术支持。因此,相比之下,j g r o u p s 实际应用的成功案例更多,大量的开源软件都使用j g r o u p s 实现j 2 e e 集群的 浙江大学硕七学位论文第二章系统掰求与设计目标 状态同步。 2 2 2 4 基于p 2 p 方式的集群底层实现的优势 与传统的集群底层实现相比,采用p 2 p 方式具有自身无可比拟的优势。p 2 p 技术的特点体现在以下几个方面,这也正是选择p 2 p 方式实现集群底层通讯方 式的原因。 1 非中心化:这是p 2 p 服务的基本特征。网络中的资源和服务分散在所 有节点上,每个节点既接受服务,也提供服务,信息的传输和服务的实现都直接 在节点之间进行,无需中问环节和服务器的介入,避免了可能的某个节点上出现 的瓶颈。正是p 2 p 的非中心化特点,带来了其在可扩展性、健壮性等其他诸多 方面的优势。 2 健壮性:p 2 p 架构非中心化特征使其天生具有耐攻击、高容错的优点。 由于服务是分担到各个节点上的,与传统服务器、客户端结构不同,对于某个节
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年襄阳日报新媒体集团公开招聘4人笔试历年参考题库附带答案详解
- 2026年北京市朝阳区高三二模语文试卷(含答案)
- 2025年罗田县经发融资担保有限公司公开招聘2人笔试历年参考题库附带答案详解
- 2025年福建莆田市正美文旅投资有限公司公开招聘工作人员1人笔试历年参考题库附带答案详解
- 2025年福建省宁德市古田县网络招聘95人笔试历年参考题库附带答案详解
- 2025年福建城厢区凤凰旅游开发有限公司公开招聘工作人员1人笔试历年参考题库附带答案详解
- 2025年甘肃天水市农业龙头企业融资担保有限责任公司招聘笔试历年参考题库附带答案详解
- 2025年湖南澧水流域水利水电开发有限责任公司公开招聘13人笔试历年参考题库附带答案详解
- 2025年浙江苍南县国投保安服务有限公司面向社会公开招聘劳务外包人员1人笔试历年参考题库附带答案详解
- 2025年浙江宏为电力建设有限公司招聘13人笔试历年参考题库附带答案详解
- 2026届新疆乌鲁木齐市高三三模英语试题(含答案)
- 2026年药学服务技能大赛考试题及答案
- 政府牵头建设商圈工作方案
- 2026陕西继续教育专业课+答题(3套)试卷及答案
- 2026年神经内科(正-副高)练习题库及完整答案详解(全优)
- 升压站土建及电气施工工程专项应急预案
- 2026西安交通大学专职辅导员招聘24人备考题库附答案详解【完整版】
- 户外运动协会工作制度
- 2025年12月大学英语六级考试真题第1套(含答案+听力原文+听力音频)
- GB/T 338-2025工业用甲醇
- 中药数据库构建与应用-洞察与解读
评论
0/150
提交评论