论文部分内容阅读
当今是因特网飞速发展的时代,人们更多的依赖网络去处理平时生活中的各种事情,这样就给网络服务器带来了巨大的压力。传统的、单一的服务器模式受其CPU、内存和磁盘I/O等硬件配置的限制,无法再承受过多的压力。为此,集群技术应运而生,它把多台不同配置的服务器综合利用,提高资源使用率,有效地分担了过多的压力。但是如何把用户请求合理的分配给集群中的多个节点,避免出现有的节点任务繁重,而有的节点处于闲置状态的情况,此时就需要找出合理的负载均衡算法从中进行调配。本文所做的主要工作如下: 1)首先,在服务器集群技术研究的基础上,考虑上传文件的特点,提出一种改进的负载均衡算法。该算法综合考虑上传文件的负载、各个节点的实时负载及服务器的硬件配置,避免大文件上传到负载重的节点上造成负载失衡;并采用动静结合的策略,把集群节点分为轻载、适载、重载三组,然后组间使用优先级法,组内使用加权轮转法;当节点负载组间变化时再向主服务器发送负载状况,从而减少与主服务器的频繁交互带来的网络带宽。 2)其次,构建实验环境,应用Badboy和JMeter测试工具进行了测试。对改进算法、周期性动态反馈负载均衡算法以及未使用负载均衡算法的系统分别进行比较。实验表明,改进算法减少了用户的等待时间,提高了系统的吞吐量,更好的实现了负载均衡。 3)最后,给出了系统的整体框架,采用java编程语言来实现。主要功能包括,收集集群中请求文件和各服务器的负载情况;根据改进的算法选出可用的服务器,并返回给浏览器端;使浏览器端直接与该服务器连接,完成请求任务;并进行实时监控,及时发现、去除出现宕机等有问题的服务器。