论文部分内容阅读
互联网已经渗透到现今社会人们生活的各个方面,为了应对激增的网络用户,网络运营者普遍采用Web服务器集群技术,而负载均衡是集群的关键,其可以合理地分发用户请求使得请求得到及时响应,并且使集群中服务器得到高效利用。Nginx作为一款优秀的HTTP和反向代理服务器,在全球诸多公司中得到了广泛地部署应用。负载均衡策略是Nginx的核心技术,但是随着互联网提供服务的业务类型越来越丰富,而由不同计算能力的服务器节点组成的异构集群在各种网络服务中大量存在,Nginx原有的负载均衡策略已经很难适应当今的需求,对其负载均衡策略的研究成为当今学术界和产业界共同关注的热点问题之一。论文针对Nginx在单一及多业务环境异构集群中的负载均衡策略进行了研究,以期能够改善多种网络服务的服务响应,使得在复杂的请求环境中能够更好的为用户提供服务。具体而言,本文完成的主要工作如下:1.针对Nginx默认负载均衡策略未考虑Web服务器集群负载随着用户服务请求不断变化的问题,提出了一种基于最小剩余负载的均衡策略,该策略通过控制负载上报周期和负载变化率来尽量减少后端Web服务器负载信息的上报,以进一步减少负载均衡器对负载信息的处理压力。并将提出的策略与Nginx加权轮询及“rt_dyn_load算法”负载均衡策略进行了实验对比,结果表明,根据集群的不同负载情况选择合适的负载均衡策略处理用户请求,可以有效降低Nginx部署环境下Web服务器集群的平均时延,提高系统平均吞吐量。2.针对用户请求的业务类型的多样性而异构集群使用普遍的情况,提出了一种多业务环境下异构集群的负载均衡策略。该策略会首先根据集群服务器的处理性能和对每种业务请求量的估计,把后端Web服务器集群划分为多个业务集群,而用户请求会在分发之前进行分类,采用基于最小剩余的动态负载均衡策略将请求分发到合适的服务器上来处理。为了有效避免某一时间段,用户请求集中于某一类业务的情况,进一步提出了服务器动态划分策略,并将提出的策略与Nginx加权轮询及“rt_dyn_load算法”负载均衡策略进行了实验对比。结果表明,在大并发量请求下能有效降低Web集群平均时延以及提高系统平均吞吐量,且吞吐量峰值的出现要晚于现有的负载均衡策略。研究工作表明,对Nginx负载均衡技术进行研究,针对其策略单一及多业务应用场景进行策略的改进和完善,可以有效提升基于Nginx部署的Web集群系统吞吐量,降低系统平均时延,研究成果具有较好的应用参考价值。