论文部分内容阅读
随着信息技术的发展,网络用户量急剧增加,Web服务器被广泛应用于大型软件系统中。通常服务器在运行前需要配置与性能相关的多个参数,通过调节Web服务器的配置参数,可以很大程度地提升Web服务器的性能。但即使一个简单的Web服务器,其配置参数也多达上百,如果通过人工调节服务器的配置参数,这无疑会耗费大量的人力物力,因此Web服务器参数优化的研究具有重要意义。传统的Web服务器参数优化研究通常在仿真实验下进行,实际应用效果往往不如人意。这些方法不仅只针对1到2个配置参数进行优化,而且需要耗费大量时间。为了更便捷、更快速获取Web服务器合理的配置参数,本文针对自建的基于J2EE多层架构的Web服务器,提出了一种基于混合二进制粒子群算法的参数优化方法,自动寻找Web服务器最优或接近最优的配置参数组合,使Web服务器整体性能达到最优。本文主要包括以下内容:(1)搭建实验平台,实现自动化优化参数,获得更真实的优化效果。本文用Tomcat和MySQL搭建了一个基于J2EE多层架构的服务器,并在该服务器上部署了一个自建的小型网上购物网站;利用性能测试软件Jmeter对该网站进行测试,获取服务器性能指标;并用Java编写一个实现优化算法的控制系统,连接Web服务器与性能测试软件,组成实验平台,实现Web服务器参数自动优化。(2)提出基于二进制粒子(BPSO)算法的Web服务器参数优化方法,实现对多个参数同时优化。深入分析BPSO算法的原理和流程,把它实际应用到Web服务器参数优化问题中。针对Web服务器中的Tomcat、MySQL和JVM的主要可调配置参数进行二进制编码,通过Java中Math.random()方法随机生成初始化种群,计算粒子适应度值,迭代搜索全局最优解,给出实验结果。实验结果表明BPSO能很好地解决Web服务器参数优化问题,最高能使Web服务器性能提升51%。(3)提出基于混合二进制粒子算法的Web服务器参数优化方法,更快速地获取合理的配置参数。针对普通BPSO算法的缺陷,提出了一种混合二进制粒子群算法。该算法通过引入经验因子和带控制因子的非线性惯性权重,来提升算法的寻优效率与寻优精度,通过在后期加入爬山算法,来克服普通BPSO在后期容易陷入局部最优值这一问题。并用该算法求解Web服务器参数优化问题,给出与普通BPSO算法的比对实验结果。实验结果表明相比基于普通BPSO算法的优化方法,该方法在大大减少实验时间的同时,能获得使Web服务器性能更优的配置参数组合。