论文部分内容阅读
Web应用是Internet上一种最重要、最广泛的应用形式,现在越来越多的应用采用基于Web服务器的B/S计算模式。随着应用复杂性和使用者的增加,Web服务器的系统容量正面临着巨大的挑战。采用大容量的服务器替代原有系统会导致巨大的开销,无法保护原来的投资,而且这种办法也不是一种真正的解决之道。Web服务器集群技术为Web服务器系统容量的不断扩展提供了良好的途径,它将一组Web服务器通过一定的形式组织在一起,构成单一的服务器映像,以提供强大的服务能力。这种系统具有较高的性能价格比和良好的系统可靠性,并且能够通过添加服务器的方式来不断扩充系统的容量,因此,Web服务器集群技术已经成为构建大型Web网站系统的关键技术之一。目前Web服务器集群技术中有一些值得研究的问题。首先,现有Web服务器集群体系结构存在处理瓶颈,限制了系统的可扩展能力和可靠性,因而不能满足大型Web集群应用的要求。其次,集群负载分配策略和算法对Web集群系统性能起着关键性的作用。随着动态页面技术的广泛应用,Web网站的负载特性变得更加复杂,现有的算法往往不能适应各种不同的负载条件,因此,有必要研究新的高性能负载分配算法以满足各种负载情况的需要。另外,随着网络传输QoS得到基本解决,QoS控制技术的研究开始向Web应用级发展,因此研究Web应用的QoS,特别是Web服务器集群的QoS,对下一代的Web应用具有重要的意义。针对上述这些问题,本论文就Web服务器集群中的一些关键性技术进行了研究,重点研究了Web服务器集群系统的体系结构、负载均衡策略与算法和Web服务器集群环境下的QoS控制技术,并取得了以下创新性成果:* 提出了一种高可扩展的分布式Web服务器集群体系结构DCA。该体系结构将分配器功能完全分布到每台后端服务器上,消除因系统所有负载经单一分配器分配而形成的处理瓶颈,增强集群系统的可扩展能力。同时消除单一分配器对系统可靠性带来的消极影响。论文对DCA中负载均衡控制和访问局部性控制进行了深入的讨论,并提出了相应的实现策略。此外,还提出了基于改进的DNS机制的两级DCA体系结构,为进一步提高DCA的可扩展性提供了思路。提出了一种基于内容的动态负载分配策略和复合式局部性识别请求分配算法CLARD。根据Web服务器静态和动态两种页面提供方式的不同特点,该策略首先通过第七层交换技术解析HTTP请求负载的内容,识别请求负载的类别并分别采取不同的方式实施负载分配。对静态负载的分配侧重考虑访问局部性控制,以提高缓存命中率,缩短页面存取时间,提高系统吞吐能力;对动态负载<WP=6>* 的分配侧重考虑负载均衡控制,将相同URL的负载均匀分配给每台服务器,以实现负载均衡分配的目的。* 提出了一种Web应用级QoS的度量和负载模型建立的方法。论文在分析了各种典型Web应用特点的基础上,结合网络传输QoS度量的思想,确定Web应用级QoS的度量标准和方法。通过应用对系统资源消耗的需求和资源保证方式来描述Web应用的QoS需求。根据Web应用对系统资源需求随时间动态变化的特点,通过测量方式建立Web应用周期性的负载模型。* 提出了一种Web服务器集群系统QoS控制模型。根据已经建立的负载模型,该控制模型从集群系统和后端服务器两个层面实施不同的控制策略。首先根据网络传输QoS信息和报文内容,实现操作系统级报文的区分接收和发送处理。通过负载模型确定不同服务类的资源需求,分配器确定每台服务器上各服务类预留的资源量。访问控制许可机制和资源容器抽象解决了服务器端不同服务类的资源分配和管理问题,实现不同服务类间性能隔离。该模型为SLA级的QoS提供了支持。 * 设计并实现了一种基于Linux平台的Web服务器集群原型系统。在开放源代码的Linux环境下实现并验证论文研究的一些技术思路,获取了初步的实验数据,同时为Web服务器集群系统开发中一些关键性技术问题的解决积累了经验。