分布式消息总线中消息代理的设计与仿真

被引量 : 5次 | 上传用户:a345333488
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
传统的消息中间件由于其架构和设计思想,存在着单点失效和可扩展性差的问题。为了积极应对市场变化带来的各种机遇和挑战,企业要求应用系统规模更加动态,架构更加灵活,响应更加迅速。基于分布式架构的消息总线应运而生,它采用了去中心化的设计,消息服务由多台地位平等的节点组成的集群协作提供。但这样的消息系统面临着几方面的挑战:如何高效合理地分配多个节点的工作负载、如何保证消息不丢失、如何处理节点失效等。这样的系统实现起来十分复杂,并且需要大量的推理和验证。因此,对一个消息总线的核心组件消息代理中部分功能进行设计并仿真是一个具有较高研究价值和实际意义的课题,对实现一个完整的消息系统具有重大的指导意义。本文根据对现有系统的研究和总结,提出了一种新的消息代理的设计方案,并基于NS2这种成熟的使用C++实现的仿真系统进行了仿真实现。其后,设计了几组场景对仿真系统进行测试,并完成了对测试结果的分析。首先对现有的消息系统进行了分析,结合它们的优缺点和存在的挑战提出了消息代理的设计目标,包括灵活的负载均衡、保证消息不丢失以及高可用性。基于前述调研分析和设计目标,对各个目标提出具体的设计方案。负载均衡机制的设计包括以下几个部分:分割主题的所有权、对消息进行重排序、消息代理的工作负载的计算以及使用分布式协调服务。保证消息不丢失的设计主要借助于外部持久化服务。针对高可用性,则设计了消息代理的失效恢复机制。接下来,本文根据设计方案设计了仿真消息系统的总体架构与系统中核心的数据结构,以及发布者、订阅者和消息代理三个模块之间交互的接口;分别对消息系统中的三个模块进行了详细设计,包括模块内部相关功能的具体流程设计;此外,还介绍了仿真系统的输入与输出数据的设计。在仿真系统的实现章节,本文给出了三个模块的核心算法设计与部分代码实现,并以文字的形式描述了消息的处理流程。随后,本文展示了所设计的几组场景下整个仿真系统运行的结果与相关图表,阐述了分析之后得到的结论。最后,对作者在课题期间的工作成果进行了总结。
其他文献
介绍了内螺纹铜管拉拔成形法与焊接法两种生产工艺,并对其技术优劣进行了对比,提出了内螺纹铜管生产和技术的发展方向。
自我国改革开放以来城镇化发展速度加快,小城镇对于农村经济发展的带动作用越来越突出。在小城镇的发展中土地扮演了重要的角色,土地不但是小城镇建设中的重要制约因素之一,
<正>随着社会的快速发展,传统的初中生物学教学模式已经不能满足学生的需求,探究式教学越来越受到人们的重视。探究式教学要求学生独立进行学习和思考,充分发挥自己的想象力,
第一章灰质体积作为阿尔茨海默病潜在生物标志物的研究第一节阿尔茨海默病及遗忘型轻度认知功能障碍患者脑部灰质萎缩及其与认知功能的相关性目的:探讨阿尔茨海默病(Alzheimer
近几年,通信行业发展迅速,频谱资源短缺的问题变得越来越突出。同时随着通信终端多样性、智能化以及宽屏化的发展,个人移动设备的耗电量也变得越来越不容忽视。如何提高通信
人们的艺术活动,无论是创作还是娱乐,其本质首先是"审美活动"。"审美"是人们对于生活美和艺术美的一种欣赏活动,美与丑的辨别活动,当然也包括审美创造活动。"特征"则是一个事
随着我国经济水平的快速发展,国内的公路里程也是迅速的增多,导致了桥梁的修建也越来越多,从而桥梁的质量也就成为了所有人最为关注的问题。因此,在桥梁的修建过程中,对桥梁
目的:探讨生物技术专业本科生免疫学实验课教学改革的效果。方法:采用问卷调查的方法,以潍坊医学院2006级生物技术专业本科学生作为实验对象进行调查。结果:95%的同学认为开
随着经济的发展与生活水平的提高,人民群众对环境保护的要求也越来越高,就是要在保证经济快速、平稳、健康发展的同时加大环境保护工作力度。本文对环境执法具体实践遇到存在
<正> 安卡拉专电 八月二日,库尔德工人党游击队在土耳其东南部绑架了十名德国旅游者。两天后,游击队又袭击了靠近伊拉克边境的一所土耳其宪兵哨所。打死打伤和绑架士兵多人。