中间件集群服务的设计与实现研究

中间件集群服务的设计与实现研究

朱寰[1]2004年在《中间件集群服务的设计与实现研究》文中提出作为以J2EE应用服务器和分布事务监控器为代表的中间件平台的重要组成部分,集群服务提供拓扑管理、故障监测和恢复、负载平衡和状态复制等功能,使中间件系统获得高可伸缩性、高可靠性和高可用性。 论文以J2EE应用服务器OnceAS和分布事务监控器OnceTx为例,详细介绍了中间件平台中集群服务的设计和实现。集群服务应用了多种设计模式,独立于具体中间件的架构和实现,增强了软件的可复用性,透明地为中间件平台提供集群支持。 随着应用规模日趋复杂,集群服务应具备一定的自我配置、自我优化、自我恢复和自我保护的自适应功能。论文讨论了集群服务中自适应的拓扑管理和负载监测,详细分析了自适应的负载平衡,提出了负载平衡算法的可扩展框架并实现了可替换的负载平衡算法。为了提高集群的整体性能,论文分析了现有算法的不足,对集群服务中的负载平衡算法进行了优化,提出了一种模糊负载平衡算法,解决了可能出现的负载颠簸引起的问题。 集群服务增强了中间件平台的整体性能。论文进一步讨论了网络通信效率对集群服务的影响,并对集群服务的可伸缩性进行了定量分析。论文同时给出了自适应负载平衡的性能优化实现,测试结果表明该方法能够有效提高集群系统的整体性能。

张志忠[2]2013年在《数据库存储系统中消息中间件的设计与实现》文中研究指明云计算所具有的大规模、低成本、高弹性、资源共享等特点使其受到业界的广泛关注。中国移动自主研发的云计算软件平台--中国移动“大云”,作为中国移动自主研发的核心基础产片组件,“大云”已形成包括分析型、交易型以及管理系统在内的四大类十叁项产品。“大云”产品主要包括弹性计算系统,分布式对象存储系统、弹性块存储系统、文件中间件等。分析型产品主要包括进行数据挖掘系统、搜索引擎系统、结构化海量数据管理系统。商务智能平台等。本文阐述了在“大云”存储数据库的系统中,为了在系统传输海量数据库时处理消息传输的消息中间件。其在系统中,通过对消息的持久化处理,对消息进行不同的传输,能对client端和service端消息进行异步通信,保持消息的安全可靠性,对消息保持持久的存储。保证系统宕机时对消息的保护,当client端的消息中断时,能对消息进行恢复和再次传输,并且保证对传输的信息不回出现消息的缺损或重复。中间件是位于服务软件之间或服务软件和硬件之间的独立应用服务程序,中间件位于client/server的系统之上,对消息的传输途径、传输协议进行管理,通过对计算机硬件及软件共享资源的管理,建立不同应用服务程序的通讯连接。即使是在不同的操作系统,不同的网络通讯协议,不同的通讯协议接口,也能使服务之间进行相互通讯。通过消息中间件的相互通讯,使应用程序可以在不同的服务环境下进行应用。本文通过系统中消息中间件的运行机理,该系统改变了海量数据的传输效率,大大提高了系统中消息的安全可靠性,解决了消息在传输过程中的丢失或重复消息的问题,在推动云计算存储的效率方面发挥着重要的作用。

李乐平[3]2006年在《消息中间件集群服务设计与实现》文中研究说明消息中间件是中间件技术的发展热点,它作为一个消息系统,利用高效可靠的消息传递机制将信息以消息的形式从一个应用程序传送到另一个或多个应用程序。作为消息中间件平台的重要组成部分,消息中间件集群服务提供拓扑管理、故障监测和恢复、负载平衡和状态复制等功能,使得消息中间件系统获得高可伸缩性、高可靠性和高可用性。论文以消息中间件InforBroker为实例,详细阐述了消息中间件中集群服务的设计。首先对集群服务的有关概念进行了描述,然后介绍了消息中间件集群服务的总体结构。集群服务应用了适配器(Adapter)、解释器(Interpreter)、单件(Singleton)和策略(Strategy)等设计模式,独立于具体消息中间件的架构和实现,增强了软件的可复用性,透明地为消息中间件提供了集群支持。论文详细阐述了消息中间件集群服务的实现。通过对服务器的运行状态的周期性检测实现了集群服务的高可用性,使用双进程技术来保证系统运行的稳定性。然后讨论了集群服务中自适应的拓扑管理和负载监测,详细阐述了自适应的负载均衡,提出了负载平衡算法的可扩展框架并实现了可替换的负载平衡算法。为了提高集群服务的整体性能,论文在现有算法的基础上,对集群服务中的负载均衡算法进行了优化,提出了一种近似负载平衡算法,经测试它解决了消息中间件系统InforBroker出现的负载颠簸引起的问题。论文最后对集群服务的高可用特性和负载均衡特性进行了测试,测试结果表明论文设计的集群服务能够很好的满足消息中间件InforBroker的要求。

张毓鲲[4]2006年在《支持面向服务体系结构(SOA)的中间件平台研究与实现》文中提出如今,中间件技术广泛地应用在各行各业的软件系统中。中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/服务器的操作系统之上,管理计算资源和网络通讯。 本论文陈述了支持SOA的中间件平台的研究与实现。所以论文的前半部分首先研究分析了中间件技术、集群技术。分别描述了中间件、集群的定义、特点功能、并且详细描述了中间件的分类及其技术标准。本文还讨论了SOA技术的概念与特点,描述了SOA的服务提供者、服务请求者、服务器代理者叁种角色,以及这叁种角色分别承担的发布、查找、绑定叁个操作之间的关系。 本论文的下半部分描述了自主开发的中间件平台(Instance Services Engine)ISE的设计与实现,ISE中间件平台是采用Java技术来构建整个平台。ISE中间件平台目前实现的功能为:支持异构平台之间的通讯、对底层通讯代码的封装、对服务的封装以及代理调用、支持业务扩张的集群功能。ISE中间件平台的技术特点是:支持面向服务的体系结构(SOA)的架构;以域管理服务为核心,通过XML数据总线将业务逻辑层中的各项服务有效集成;在业务协同处理的同时,实现接入服务、分发服务、业务逻辑处理服务功能的全冗余与可扩展;使用Java nio实现网络的接入管理,提高接入效率;通过线程池技术处理连接请求,提高系统性能,节约大量系统资源;借助内置的SML消息传输机制,保证数据可靠传输。 目前ISE中间件平台完成了系统的原形,并且在交易软件中实现了ISE(演示版本),取得了良好的效果。本人参与了ISE中间件平台的设计与开发,主要完成网络接入程序的开发工作。ISE平台目前只完成了部分功能,还有不足之处,需要进一步完善和改进。

吴健[5]2006年在《证券集中交易自适应业务平台的设计与实现》文中研究指明作为证券集中交易中间件平台的重要组成部分,集群服务应提供拓扑管理、故障监测和恢复、负载平衡等功能,使中间件系统获得高可伸缩性、高可靠性和高可用性。 论文从提高业务平台集群服务自适应能力的角度出发,详细介绍了证券集中交易自适应业务平台中集群服务的设计和实现。集群服务独立于具体中间件的架构和实现,透明地为中间件平台提供集群支持。 为应对证券集中交易中的高突发和高集中访问,业务平台的集群服务应具备一定的自我配置、自我优化、自我恢复和自我保护的自适应功能。论文讨论了业务平台集群服务中自适应的拓扑管理和负载监测,详细分析了自适应的负载平衡,提出了一种双阀值的负载平衡算法。为了解决可能出现的负载颠簸引起的问题,论文分析了该算法的不足,对集群服务中的负载平衡算法进行了改进。 测试结果表明自适应业务平台能满足证券行业在高度突发和集中访问时的要求,使用户可以动态地增加应用服务器数量以线性扩充系统处理能力,在一定程度上解决了业务平台存在的性能瓶颈问题。

管志斌[6]2011年在《基于中间件的自适应股票交易平台设计与实现》文中研究说明目前,中国股票经纪业务采取股票集中交易模式已经成为其发展的必然趋势。它不仅是证券公司面对同行业之间的竞争,还是面对低迷的市场行情和萎缩的经纪业务收入而调整战略部署的关键举措,也是在未来激烈的市场竞争中抢得先机、立于不败之地的制胜法宝。股票集中交易平台是由若干交易中间件搭建起来的中间件集群,集群服务要为中间件提供拓扑管理、负载均衡、故障监测和恢复等功能,给予中间件平台高可伸缩性、高可靠性和高可用性的支持。目前一些主流的中间件平台可以通过增加业务处理的应用服务器数量来线性扩充系统处理能力,但也存在不少问题:集群服务的配置和使用过于复杂;负载均衡的策略不甚理想;增加业务处理的应用服务器的时候,要在服务器改变配置后重新启动,不能在服务器不停止运行的前提下,动态地增加应用服务器。随着创业板的发展和海外直投业务的兴起,交易模式上将呈现多样性和可变性,对整个平台的柔性提出了新的要求。为了解决平台动态优化和柔性的问题,交易平台应具备一定的自我配置、自我优化、自我恢复和自我保护的自适应功能。论文从提高股票交易平台自适应能力的角度出发,详细地阐述了自适应股票集中交易平台的设计和实现的方法,并且针对自我优化的自适应功能设计了拓扑管理和负载均衡两个模块来实现交易中间件的自适应拓扑管理和均衡负载。论文中详细分析了自适应的负载均衡,提出了一种双阀值的负载均衡算法,并且分析了该算法的不足。为了解决算法中可能出现的负载颠簸而引起的问题,论文还对交易中间件的负载均衡算法进行了改进。测试结果表明自适应股票交易平台能满足股票行业在高度突发和集中访问时的要求,使用户可以动态地增加应用服务器数量以线性扩充系统处理能力,在一定程度上解决了交易平台存在的性能瓶颈问题。

李莎[7]2017年在《移动交易容错设计与实现》文中研究指明高负载的移动交易需要通过分布系统实现吞吐能力的水平扩展,因此会导致分布系统实现相互冲突的多个目标:事务处理效率、事务处理的一致性、网络分区、可用性,同时还需要考虑移动端的掉线。根据 CAP(Consistency、Availability、Partition Tolerance)理论,保持性能的同时折中一致性,采用事务的最终一致性容错模型。本文通过消息中间件和集群架构实现BASE(Basically Available、Soft State、Eventual Consistency)事务容错,适合移动交易场景下的长事务处理:从订单提交到订单处理各个环节和流程的处理。分布系统的多个相同功能的节点实现了处理的冗余,消息队列的日志和持久化机制能够解决分布系统的分割,从而实现交易各个环节和流程处理的最终一致性。具体研究内容包括:(1)设计高负载移动交易事务容错的基本架构,通过消息中间件异步解耦交易长事务为多个本地小事务,通过Spring框架的注解事务管理机制保证消息发送和本地事务执行的原子性,实现消息投递的可靠性,通过消息中间件的日志和持久化机制实现消息存储的可靠性。(2)针对事务最终一致性容错方案中出现的web服务器、功能节点以及消息中间件由于单点故障造成的消息丢失问题,利用集群技术实现功能冗余,通过消息中间件的心跳检测以及负载均衡器实现故障检测和功能转移。(3)针对移动端掉线造成交易事务执行状态反馈中断问题,重连后保证消息的持久化,通过用户session信息重新获取订单状态,实现事务状态接收的连续性,通过消息队列的幂等投递模式以及消息去重表解决消费端重复消费问题。(4)在当前的SSM(SpringMVCSpringMybatis)技术框架上,通过Spring的注解事务实现消息发送和本地事务以及本地消息存储的原子性以及Mybatis框架的数据持久化,保证消息发送的可靠性,通过ActiveMQ幂等投递和去重表实现消息消费的幂等性,通过Nginx和消息中间件的心跳检测以及基于Zookeeper+Leve1Db的集群管理应用实现web服务器、功能节点以及消息中间件故障转移。通过基于Redis集中式会话共享解决移动用户断线重连后会话信息丢失的问题,实现事务最终一致性容错方案,验证方案的有效性和一致性获取的时间延迟。本文通过开源框架实现事务最终一致性容错方案,最后利用Jmeter压测工具模拟真实交易场景中的高并发请求,最后实验结果显示正常情况下的事务吞吐量,即长事务拆分后的小事务的吞吐量在700每秒,响应时间在3秒以内,即使故障下,保证了系统的恢复时间在30毫秒以内,并且订单状态最终实现一致,同时移动断线重连后依然正常接收事务执行状态,实验结果验证该方案的有效性和可用性。

秦攀科[8]2009年在《支持集群的消息中间件的研究与设计》文中指出为了解决消息中间件中的性能瓶颈问题和实现其可靠性的提高,研究并开发了支持集群的消息中间件。集群可以把单个消息中间件扩展到消息中间件环境,提供单个节点无法提供的性能和可靠性保障。系统在研究设计开发的过程中,一方面对原有的消息传输服务进行改造;另一方面基于所改造的消息传输服务本身的特点进行消息集群系统的设计与实现。消息集群设计过程中涉及的主要问题包括:消息传输服务特点分析、消息集群特征总结、消息集群整体结构的研究与设计和详细设计与实现。消息集群整体结构研究与设计中,在对消息传输服务和消息集群特点分析的基础上借鉴了典型集群系统四层结构的设计理念,提出了消息集群的整体设计方案。结合实际项目开发中消息服务的特点对其结构进行了改造,并对该设计方案进行了可行性和可用性的分析。从集群内部数据交互、负载均衡、数据同步、负载迁移和故障恢复几个方面详细论述了每个部分的设计与实现方法。集群内部数据交互,基于消息传输服务的特点和消息集群的要求,分析了系统中数据和命令的传输方式;负载均衡,使用动态负载均衡算法,综合考虑对服务器负载产生影响的多种因素;数据同步,描述了所设计的消息集群内部四层结构中,层与层之间、每层内部各个节点之间所同步的数据;负载迁移,集群设计与实现的重点与难点,对负载迁移原因进行分析,总结并提出了消息集群系统需要进行负载迁移的四种情况,并针对这四种迁移情况进行详细的分析与设计;故障恢复,重点分析负载均衡器和服务器故障恢复的模式,设计了双机热备和任务转移两种故障恢复机制。

赵劼[9]2004年在《Web应用服务器集群通信系统的设计与实现》文中进行了进一步梳理Web应用服务器为多层分布式企业级应用的开发、部署、集成、运行和维护提供了通用的基础设施。随着在网络计算环境下用户规模和数据量的增长,单个Web应用服务器往往不能满足性能、可靠性等方面的需求,需要借助集群技术以提高分布式系统的可用性、可扩展性和处理性能。可靠的集群通信是Web应用服务器信息交互的基础,然而目前应用服务器产品的集群通信系统普遍存在着自适应能力低、容错性较差、可重配能力不足等问题。本文围绕上述问题,探讨了Web应用服务器集群通信系统的设计与实现。 首先,本文研究了维持集群结构一致性和正确性的关键问题。分析了Web应用服务器集群结构的应用需求,实现了自适应动态拓扑结构,在集群成员间维持拓扑视图的一致性,完成动态加入和优雅退出操作。提出了分布式对等管理机制,避免了性能和可用性瓶颈。利用管理服务器心跳信号侦测同名集群,通过管理服务器自动降级合并同名集群,保证集群的单一性。实现了失效监测链,在任意服务器失效情况下能够在有限时间内重组集群,同时在管理服务器失效后重新选举管理服务器,增强了集群的整体可用性。 其次,本文研究了Web应用服务器集群消息传输的叁类模型:PUB/SUB模型、恒定点一点传输模型和临时点一点传输模型,实现了基于集群协作的优化可靠多播,利用滑动窗口进行流控制。在局域网环境下扩展了Gossip算法,实现了分布式消息确认机制,同时依据动态拓扑视图的实时更新避免失效实例对消息的阻塞,在不可靠多播协议的基础上实现了消息的可靠传输。 最后,本文描述了可灵活重配的集群通信系统CCSAS的具体实现。CCSAS利用XML结构化对象模型和Java虚拟机的运行时动态绑定机制,根据可配置组件参数和运行策略实现功能类实例的动态加载,赋予集群管理者灵活更改集群结构、备份策略、负载平衡机制等运行时规则的能力,实现了高度柔性的集群。 论文的研究成果已应用于中科院软件所自主开发的基于J2EE规范的Web应用服务器OnceAS中。目前,OnceAS已成功用于电子政务、电子商务和ERP系统等领域。

乔洪宇[10]2014年在《分布式数据库中间件驱动模块的设计与实现》文中研究指明随着信息技术的发展,人们对于数据的存储与检索的观念发生了巨大的变化。人们更倾向于将个人数据保存到互联网中,比如社交网络等。现在,越来越多的数据也都从个人的硬盘转移到了互联网上。当数据量到达一定规模后,这些数据就被称为海量数据。现如今,数据库的发展速度已经明显慢于数据的增长速度。为了能够快速且稳定地管理这些数据,我们就需要使用分布式数据库。分布式数据库将数据分散到不同的数据存储服务器中。当上层应用对数据进行操作时,中间件会根据数据的分布规则去对应的数据存储服务器上获取数据,从而减少平均每台服务器的并发数,进而在整体上提高数据库的性能。分布式数据库中间件严格遵循MySQL的通信协议和SQL标准,同时它还处在应用层和数据库集群的中间,通过截获客户端发往服务器的数据,并对SQL或者其他请求进行分析、重构和转发,将语句发往对应的MySQL数据库实例;再从相应的数据库获取信息,转发至对应的客户端。通过该中间件可以方便地对后端数据库集群进行不同层次分布式部署。这样,分布式数据库就有了传统关系型数据库的特点,也有分布式数据库的优点。本文主要描述分布式数据库中间件驱动模块的设计与实现。驱动模块包含叁部分内容:数据通信、集群管理和执行计划构建。数据通信功能主要使用ACE自适配通信环境(ADAPTIVE Communication Environment)进行开发,用来实现中间件与客户端应用、中间件与MySQL服务器的数据通信,同时还能对部分常用的MySQL数据包进行解析。集群管理的主要功能有对数据库集群状态的监控;实现数据库集群读写分离、负载均衡、故障切换和回切;对数据库集群进行逻辑划分,实现数据库分片。读写分离和负载均衡可以有效地缓解高并发带来的性能损耗。故障切换和回切功能给集群提高了可靠性。集群采用双机互备、一主多从的解决方案,这样可以避免由于单点故障导致整个集群不可用的问题。执行计划构建主要是设计和实现了数据导入语句LOAD DATA INFILE、排序查询语句SELECT ORDER BY LIMIT和数据定义语言DDL(Data Definition Language)。在实现执行计划过程中,使用了大量的优化方案和排序算法,从而提高了语句执行的性能。最后,对需求中提出的全部功能进行了测试。同时,还对分布式数据库中间件驱动模块的数据导入语句和排序查询语句进行了性能测试,以保证在实现过程中没有执行效率和性能的回落。测试通过后驱动模块已经可以交付使用,并且成为了整个分布式数据库中间件的重要组成部分。

参考文献:

[1]. 中间件集群服务的设计与实现研究[D]. 朱寰. 中国科学院研究生院(软件研究所). 2004

[2]. 数据库存储系统中消息中间件的设计与实现[D]. 张志忠. 大连理工大学. 2013

[3]. 消息中间件集群服务设计与实现[D]. 李乐平. 国防科学技术大学. 2006

[4]. 支持面向服务体系结构(SOA)的中间件平台研究与实现[D]. 张毓鲲. 华东师范大学. 2006

[5]. 证券集中交易自适应业务平台的设计与实现[D]. 吴健. 北京邮电大学. 2006

[6]. 基于中间件的自适应股票交易平台设计与实现[D]. 管志斌. 复旦大学. 2011

[7]. 移动交易容错设计与实现[D]. 李莎. 东南大学. 2017

[8]. 支持集群的消息中间件的研究与设计[D]. 秦攀科. 中国地质大学(北京). 2009

[9]. Web应用服务器集群通信系统的设计与实现[D]. 赵劼. 中国科学院研究生院(软件研究所). 2004

[10]. 分布式数据库中间件驱动模块的设计与实现[D]. 乔洪宇. 哈尔滨工业大学. 2014

标签:;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  

中间件集群服务的设计与实现研究
下载Doc文档

猜你喜欢