论文部分内容阅读
分布式系统因其并行性可以降低处理的瓶颈,提供更好的性能价格比,并且具有在系统出现故障的情况下继续运行的潜力,因而得到了越来越广泛的研究和应用。然而由于分布式系统中结点的自治性,常会出现系统运行一段时间后一些结点的任务仍然很多,称之为超载,而部分结点却处于空闲状态,称之为轻载,这种空闲与忙等待并存的情况严重影响了系统的整体性能。负载平衡的目的就是尽量平衡系统各结点的负载以提高系统整体性能。前人在此方面也做了很多工作,提出了多种负载平衡策略及算法,但仍然存在一些问题。本文针对负载平衡过程中出现的负载评价和抖动问题,提出了一种新的分布式系统负载平衡策略,重点在负载平衡检测和优化方面。本文首先分析介绍了分布式系统的发展史以及其软件硬件支持,详细给出了分布式系统的结构。其次,介绍了负载平衡的相关知识,其中重点介绍了动态负载平衡。最后,提出了一种新的分布式系统负载平衡策略,并给出了其算法基本流程。本文的主要贡献首先在于在负载平衡检测方面,引入了多项重要负载指标,综合评价结点负载状况,定义了结点动态负载值。鉴于目前算法大多只把CPU队列作为负载指标,本文根据任务的不同类型给各个负载指标设置不同系数以区别各个负载指标的重要性,并将结点的动态负载值作为判断结点轻载重载的依据。这样可以较准确有效的获取结点负载状况,使超载结点迅速转移超载部分任务而不再继续接收新任务。其次,在负载平衡优化方面,引入系统管理站和实时负载值。由管理站负责周期收集并计算记录结点负载,避免了忙结点向系统广播超载信息,一定程度上减轻了忙结点的负担。同时管理站根据结点动态负载值和初始负载值计算结点的实时负载值,并生成接收结点负载线性表,以供超载结点查找最优空闲结点,从而减少任务的响应时间,同时避免因任务多次迁移得不到执行而引起的抖动现象。最后,设计负载平衡系统模型,并利用OPNET对负载平衡系统进行仿宾建模,以求素数为例对各结点CPU利用率进行比较分析,以验证平衡策略的有效性。