一种多功能服务器调度方法

文档序号:8530422阅读:438来源:国知局
一种多功能服务器调度方法
【技术领域】
[0001]本发明涉及通信领域,尤其涉及一种多功能服务器调度方法。
【背景技术】
[0002]在一个服务器集群上,有很多不同功能的服务器,这些功能服务器各自独立,处理自己的业务,提供企业所需的全方位网络服务,包括:企业的电子邮件、企业网站、Web服务、FTP文件传输、文件共享、项目管理系统、网络办公系统等常见的互联网服务需求,同时可与企业现有系统进行无缝整合,保证企业的投资及原有系统的运用。多种安全机制,用于解决网络安全和网络管理服务问题,保障企业上网安全及数据安全。为了增加这一类业务并行处理的能力,往往会采用多台相同功能的服务器同时运算,这时就需要有一个资源调度的服务程序来将客户端的请求均匀的分配到不同的机器上去。常见的服务器负载平衡方法为用户手动选择方法和DNS轮询方式。这两种方法可靠性低、负载分配不均衡,导致某几台服务器负荷很低,而另几台服务器负荷很高、处理缓慢、配置高的服务器分配到的请求少,而配置低的服务器分配的请求多,造成单个服务器压力过重或者闲置的情况。

【发明内容】

[0003]针对上述技术问题,本发明提供了一种多功能服务器调度方法,步骤包括:
[0004]I)将服务器按功能分成多个服务器组;
[0005]2)建立服务器组与客户端业务对应的索引表;
[0006]3)根据客户端业务,比对所述索引表选择服务器组;
[0007]4)采用轮询调度的方法,为客户端确定与其业务相对应的服务器组中的服务器。
[0008]优选方案是:同组的服务器排成一个队列。
[0009]优选方案是:所述轮询调度的方法步骤包括:
[0010]a)提取客户端业务ID,然后在索引表中查找与该业务ID对应的服务器组;
[0011]b)将该服务器组的服务器指针往后移一个单位后判断所对应的服务器组指针所指向服务器是否空闲,如果服务器空闲,返回客户端“该服务器资源可用”;如果服务器忙碌,所述指针继续后移,继续判断服务器是否空闲,如果到达所述队列的队尾仍无空闲服务器,则所述指针跳转到所述队列的队头,重新开始判断服务器是否空闲,直到所述指针移动到指针最初指向的位置仍无空闲服务器,则返回客户端“无可用服务器资源”。
[0012]优选方案是:所述服务器均有一个可使用的标识。
[0013]优选方案是:客户端访问服务器组的最初位置为客户端上次访问服务器组指针指向位置的下一个位置。
[0014]优选方案是:所述服务器按功能分成多个组,每组执行相同的功能。
[0015]本发明将服务器按照功能进行分组,并建立索引,能够让客户端请求快速定位服务器资源,同一组服务器采用轮询调度算法,能够让客户端请求均匀的分配到不同的机器上,避免了单个服务器压力过重或者闲置的可能。
【附图说明】
[0016]图1为本发明的工作流程示意图。
【具体实施方式】
[0017]在一个服务器集群上,有很多不同功能的服务器,这些功能服务器各自独立,处理自己的业务,为了增加这一类业务并行处理的能力,往往会采用多台相同功能的服务器同时运算,这时就需要有一个资源调度的服务程序来将客户端的请求均匀的分配到不同的机器上去。常见的服务器负载平衡方法为:
[0018]I)用户手动选择方法
[0019]这是一种较为古老的方式,通过在主站首页入口提供不同线路、不同服务器连接的方式,来实现负载均衡。
[0020]2) DNS轮询方式
[0021]大多域名注册商都支持多条A记录的解析,这就是DNS轮询,DNS服务器将解析请求按照A记录的顺序,逐一分配到不同的IP上,这样就完成了简单的负载均衡。虽然DNS轮询的成本非常低,但是,DNS负载均衡存在两个明显的缺点。
[0022]a.可靠性低
[0023]假设一个域名DNS轮询多台服务器,如果其中的一台服务器发生故障,那么所有的访问该服务器的请求将不会有所回应,这是任何人都不愿意看到的。即使从DNS中去掉该服务器的IP,但在Internet上,各地区电信、网通等宽带接入商将众多的DNS存放在缓存中,以节省访问时间,DNS记录全部生效需要几个小时,甚至更久。所以,尽管DNS轮流在一定程度上解决了负载均衡问题,但是却存在可靠性不高的缺点。
[0024]b.负载分配不均衡
[0025]DNS负载均衡采用的是最简单的轮询负载算法,不能区分服务器的差异,不能反映服务器的当前运行状态,不能做到为性能较好的服务器多分配请求,甚至会出现客户请求集中在某一台服务器上的情况DNS服务器是按照一定的层次结构组织的,本地DNS服务器会缓冲已解析的域名到IP地址的映射,这会导致使用该DNS服务器的用户在一段时间内访问的是同一台Web服务器,导致Web服务器间的负载不均衡。此外,用户本地计算机也会缓存已解析的域名到IP地址的映射。当多个用户计算机都缓存了某域名到IP地址的映射时,而这些用户继续访问该域名下的网页,这是也会导致不同Web服务器件的负载分配不均衡。负载不均衡可能导致的后果有:某几台服务器负荷很低,而另几台服务器负荷很高、处理缓慢;配置高的服务器分配到的请求少,而配置麴的服务器分配的请求多。因此,DNS轮询方式仅适用于一些可靠性要求不高的服务器集群,例如:图片服务器群、纯静态网页服务器集群等。
[0026]本发明采用了轮询调度方法,轮询调度是通信中信道调度的一种策略,该调度策略使用户轮流使用共享资源,不会考虑瞬时信道条件。从相同数量无线资源(相同调度时间段)被分配给每条通信链路的角度讲,轮询调度被视为公平调度。
[0027]下面结合图1对本发明进行详细描述:
[0028]本发明提供了一种多功能服务器调度方法,步骤包括:
[0029]I)将服务器按功能分成多个服务器组,所述服务器按功能分成多个组,每组执行相同的功能;
[0030]2)建立服务器组与客户端业务对应的索引表,提取客户端业务ID,然后在索引表中查找与该业务ID对应的服务器组;
[0031]3)根据客户端业务,比对所述索引表选择服务器组;
[0032]4)采用轮询调度的方法,为客户端确定与其业务相对应的服务器组中的服务器,同组的服务器排成一个队列;所述轮询调度的方法步骤包括:将该服务器组的服务器指针往后移一个单位后判断所对应的服务器组指针所指向服务器是否空闲,如果服务器空闲,返回客户端“该服务器资源可用”;如果服务器忙碌,所述指针继续后移,继续判断服务器是否空闲,如果到达所述队列的队尾仍无空闲服务器,则所述指针跳转到所述队列的队头,重新开始判断服务器是否空闲,直到所述指针移动到指针最初指向的位置仍无空闲服务器,则返回客户端“无可用服务器资源”。所述服务器均有一个可使用的标识。客户端访问服务器组的最初位置为客户端上次访问服务器组指针指向位置的下一个位置。
[0033]尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。
【主权项】
1.一种多功能服务器调度方法,其特征在于,包括以下步骤: 1)将服务器按功能分成多个服务器组; 2)建立服务器组与客户端业务对应的索引表; 3)根据客户端业务,比对所述索引表选择服务器组; 4)采用轮询调度的方法,为客户端确定与其业务相对应的服务器组中的服务器。
2.根据权利要求1所述的服务器调度方法,其特征在于,同组的服务器排成一个队列。
3.根据权利要求2所述的服务器调度方法,其特征在于,所述轮询调度的方法步骤包括: a)提取客户端业务ID,然后在索引表中查找与该业务ID对应的服务器组; b)将该服务器组的服务器指针往后移一个单位后判断所对应的服务器组指针所指向服务器是否空闲,如果服务器空闲,返回客户端“该服务器资源可用”;如果服务器忙碌,所述指针继续后移,继续判断服务器是否空闲,如果到达所述队列的队尾仍无空闲服务器,则所述指针跳转到所述队列的队头,重新开始判断服务器是否空闲,直到所述指针移动到指针最初指向的位置仍无空闲服务器,则返回客户端“无可用服务器资源”。
4.根据权利要求1所述的服务器调度方法,其特征在于,所述服务器均有一个可使用的标识。
5.根据权利要求4所述的服务器调度方法,其特征在于,客户端访问服务器组的最初位置为客户端上次访问服务器组指针指向位置的下一个位置。
6.根据权利要求1所述的服务器调度方法,其特征在于,所述服务器按功能分成多个组,每组执行相同的功能。
【专利摘要】本发明公开了一种多功能服务器调度方法,包括以下步骤:1)将服务器按功能分成多个服务器组;2)建立服务器组与客户端业务对应的索引表;3)根据客户端业务,比对所述索引表选择服务器组;4)采用轮询调度的方法,为客户端确定与其业务相对应的服务器组中的服务器。本发明将服务器按照功能进行分组,并建立索引,能够让客户端请求快速定位服务器资源,同一组服务器采用轮询调度算法,能够让客户端请求均匀的分配到不同的机器上,避免了单个服务器压力过重或者闲置的可能。
【IPC分类】H04L29-08, H04L12-863
【公开号】CN104852964
【申请号】CN201510169232
【发明人】徐志刚, 张立, 杨爱民
【申请人】北京金和软件股份有限公司
【公开日】2015年8月19日
【申请日】2015年4月10日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1