流水线Web服务器KETA上QoS控制机制的研究与实现
作者单位:国防科学技术大学
学位级别:硕士
导师姓名:廖湘科
授予年度:2005年
学科分类:12[管理学] 1201[管理学-管理科学与工程(可授管理学、工学学位)] 08[工学] 081201[工学-计算机系统结构] 0812[工学-计算机科学与技术(可授工学、理学学位)]
主 题:Web QoS KETA 流水体系结构 内容自适应机制 线程调配
摘 要:近年来,由于Internet上Web应用的爆炸性增长,目前Web流量在Internet总流量中的比例已经超过了60%。HTTP请求的指数性增长使得很多热门Web站点都经常面临服务器超载的问题,这对Web服务器的处理能力和超载时的处理行为提出了较高的要求。另外,随着电子商务的兴起,Internet的服务模式正由传统的数据通信与信息浏览向电子交易与服务转变,与传统的TCP/IP和HTTP服务的平均主义哲学不同,电子商务应用要求对其用户或服务进行区分优先级别的处理,提供基于利润收益的区分服务,这种情况下服务质量(QoS)控制成为重要的研究课题。 为了提高国产服务器操作系统Kylin的Web服务性能,一种新颖的基于非对称多线程流水线体系结构的内核Web服务器—KETA得到提出和应用。KETA将Web请求的处理分为四个阶段,设置相对独立的线程组完成相应的功能,提高了线程的利用率和系统的并发度,显著地改善了Web服务器的服务性能。 本文在设计实现KETA体系结构的基础上,参照KETA在测试应用中实际表现,发掘出KETA在提供Web服务时的一些不足;同时,根据对于Web QoS策略的细致研究提出了针对性的改善方法,在提高KETA性能的同时,也保证Web服务的稳定性和优质性。 本课题对于到来的Web请求提出了结合网络端的优先分级策略,并以此优先分级指导请求的处理调度,实现了服务器端与网络端QoS机制的结合,体现了区分服务的需求;针对高负载时的服务器处理性能下降的状况,提出并实现了基于内容的自适应降级服务机制,在高负载时根据请求的优先级提供内容不同的服务返回而不是简单的拒绝超载的请求,节约了Web服务器系统资源;KETA原有流水线结构各流水栈处理线程静态设定,而实际运行中各流水栈负载随服务器负载不断变化且各流水栈之间负载并不均衡,针对这种情况提出并实现了前馈与反馈相结合的动态线程调度机制,优化了系统资源的使用状况,并根据服务器负载状况限定KETA线程占有的系统资源总量,保证服务器系统稳定工作。