论文部分内容阅读
在计算机与网络的发展过程中,计算机的计算能力和网络的带宽一直在飞速增长。网络上服务器的负载越来越重。如何提高服务器的性能成为当今计算机研究的热点问题。提高服务器性能有两类方法。一类是用多个服务器节点组成服务器群,另一类是充分挖掘单个服务器的潜力。本文的工作专注于第二类方法。主要有以下三个方面: 1) 总结了当前流行的服务器的结构,对各个服务器的结构进行了分类和评述。进而提出了一个新的服务器结构:流水线结构(Pipeline)。并且针对缓存操作提出了“资源管理者模式”。根据上述设计,实现了一个真实的Web 服务器PRWS,并对之做了性能测试。实验表明,PRWS 的性能大大高于其它Web 服务器。2) 针对服务器过载时的性能对Linux 的相关源代码进行了分析。用排队论分析了内核的收包过程,得出了关于服务器在过载时性能的几个结论。基于上述分析提出并在Linux上实现了提高服务器在过载时性能的方法。实验显示这些方法能有效防止活锁现象,大大提高服务器在高负载情况下的性能。3) 重新定义了调度算法的公平性的量度,提出一个新的调度算法即多优先级队列-有限优先权调度算法(MPQ-LP)。处理器共享算法(PS)具有最高的公平性。最短剩余处理时间优先(SRPT)算法具有最小的平均等待时间,即效率。MPQ-LP 结合了这两个算法的优点,它可以根据实际需要在公平性和效率之间进行静态或动态调节,而且对于每一个具体作业,都有固定的最长完成时间,即没有SRPT 调度算法的饿死现象,而且减少了算法的时间复杂度。该算法特别适用于对服务器请求的调度。