[发明专利]一种集群服务的负载均衡方法和装置无效
| 申请号: | 201010103208.8 | 申请日: | 2010-01-27 |
| 公开(公告)号: | CN102137128A | 公开(公告)日: | 2011-07-27 |
| 发明(设计)人: | 黄志辉 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
| 主分类号: | H04L29/08 | 分类号: | H04L29/08 |
| 代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 何文彬 |
| 地址: | 518000 广东省深*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 集群 服务 负载 均衡 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,特别涉及一种集群服务的负载均衡方法和装置。
背景技术
随着互联网技术的蓬勃发展,很多互联网服务应运而生,单机服务器的性能很难满足现有的应用需求,因此,大规模、分布式的集群服务得到了广泛地应用。集群服务(Cluster)是一种由两台或者两台以上相互独立的服务器(或称为节点机)构成的松散耦合的计算节点集合,各个服务器在网络中表现为单一的系统,并以单一的系统模式加以管理。此单一的系统为用户终端提供高可靠性的服务,每一台服务器都可承担部分计算任务,并且由于群集了多台服务器的性能,因此,整体系统的计算能力将有所提高;同时,每台服务器还能承担一定的容错任务,当其中某台服务器出现故障时,系统可以在专用软件的支持下将这台服务器与系统隔离,并通过各服务器之间的负载转移机制实现新的负载均衡,同时向系统管理员发出报警信号。
作为集群服务的关键技术,负载均衡具体指的是:集群服务中的各个服务器根据自身的计算能力,分配并承担相应的计算。现有技术中,在实现集群服务的负载均衡方面,主要包括:软件方式,如采用LVS(Linux Virtual Server,Linux虚拟服务器)架构下的负载均衡;硬件方式,如在专门的交换机上实现负载均衡等。
在实现本发明的过程中,发明人发现现有技术至少存在以下缺点:
采用软件方式实现的负载均衡,常常会受制于软件系统平台,处理不够灵活;而采用硬件方式实现的负载均衡,由于硬件的成本较高,部署不够灵活。
发明内容
为了在分布式集群服务中达到一种方便灵活的负载均衡的实现,本发明实施例提供了一种集群服务中的负载均衡方法和装置。所述技术方案如下:
一种集群服务中负载均衡的方法,所述方法包括:
获得提供同一类集群服务的多个负载节点中每个负载节点的负载能力;
根据所述负载能力获得每个负载节点的负载因子;
根据所述负载因子生成负载分配序列;
当接收到待分配的服务请求时,生成随机数,并根据所述随机数和所述负载分配序列确定处理所述待分配的服务请求的负载节点。
所述获得提供同一类集群服务中每个负载节点的负载能力,具体包括:
接收负载节点发送的注册信息,所述注册信息中携带所述负载节点的负载能力;
或者,
接收管理员输入的配置信息,所述配置信息中包括每个负载节点的负载能力;
或者,
下发负载能力获得消息给每个负载节点,获得每个负载节点的负载能力。
所述根据所述负载能力获得每个负载节点的负载因子,具体包括:
根据每个负载节点的负载能力获得全部负载节点之间负载能力的比例关系;
将所述比例关系中每个负载节点对应的数值作为该负载节点的负载因子。
所述根据所述负载因子生成负载分配序列,具体包括:
所述多个负载节点组成负载分配序列,所述每个负载节点在所述负载分配序列中的个数与其负载因子的值相等。
所述根据所述随机数和所述负载分配序列确定处理所述待分配的服务请求的负载节点,具体包括:
计算所述负载因子的数值总和;
使用所述随机数模除所述负载因子的数值总和得到参考值;
在所述负载分配序列中,获得位置为所述参考值的负载节点,将所述获得的负载节点作为处理所述待分配的服务请求的负载节点。
一种集群服务中负载均衡的装置,所述装置包括:
负载能力获得模块,用于获得提供同一类集群服务的多个负载节点中每个负载节点的负载能力;
负载因子获得模块,用于根据所述负载能力获得模块获得的负载能力获得每个负载节点的负载因子;
生成模块,用于根据所述负载因子获得模块获得的负载因子生成负载分配序列;
确定模块,用于当接收到待分配的服务请求时,生成随机数,并根据所述随机数和所述生成模块生成的负载分配序列确定处理所述待分配的服务请求的负载节点。
所述负载能力获得模块,具体包括:
第一单元,用于接收负载节点发送的注册信息,所述注册信息中携带所述负载节点的负载能力;
或者,
第二单元,用于接收管理员输入的配置信息,所述配置信息中包括每个负载节点的负载能力;
或者,
第三单元,用于下发负载能力获得消息给每个负载节点,获得每个负载节点的负载能力。
所述负载因子获得模块,具体包括:
比例单元,用于根据每个负载节点的负载能力获得全部负载节点之间负载能力的比例关系;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010103208.8/2.html,转载请声明来源钻瓜专利网。





