CN105282259A - 用于后台集群服务的负载均衡分配方法、代理及系统 - Google Patents

用于后台集群服务的负载均衡分配方法、代理及系统 Download PDF

Info

Publication number
CN105282259A
CN105282259A CN201510780814.6A CN201510780814A CN105282259A CN 105282259 A CN105282259 A CN 105282259A CN 201510780814 A CN201510780814 A CN 201510780814A CN 105282259 A CN105282259 A CN 105282259A
Authority
CN
China
Prior art keywords
server
response time
weights
time interval
weight
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510780814.6A
Other languages
English (en)
Other versions
CN105282259B (zh
Inventor
向志玲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHENZHEN LAN-YOU TECHNOLOG Co Ltd
Original Assignee
SHENZHEN LAN-YOU TECHNOLOG Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHENZHEN LAN-YOU TECHNOLOG Co Ltd filed Critical SHENZHEN LAN-YOU TECHNOLOG Co Ltd
Priority to CN201510780814.6A priority Critical patent/CN105282259B/zh
Priority claimed from CN201510780814.6A external-priority patent/CN105282259B/zh
Publication of CN105282259A publication Critical patent/CN105282259A/zh
Application granted granted Critical
Publication of CN105282259B publication Critical patent/CN105282259B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1025Dynamic adaptation of the criteria on which the server selection is based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/08Load balancing or load distribution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/04Large scale networks; Deep hierarchical networks
    • H04W84/08Trunked mobile radio systems

Abstract

一种用于后台集群服务的负载均衡分配方法、代理及系统,方法包括:S1、在一个时间区间内,基于各个服务器的初始权重/步骤S2重新设定的权重,根据负载均衡算法分配连接请求给相应的服务器;S2、在一个时间区间结束后,根据在该时间区间内各个服务器的响应时间和成功率,重新计算并设定各个服务器的权值,启动下一个时间区间并进入步骤S1。本发明以时间区间为基本单位,根据该时间区间内各服务器的响应时间和成功率,对各服务器的权值进行动态修正,响应时间和成功率实质上反应了各服务器在网络、服务器环境这些因素影响下的实际性能,因此,本发明可以实现在各服务器性能有差异性的环境下最大化使用所有服务器的处理能力,使请求得到最优的分发。

Description

用于后台集群服务的负载均衡分配方法、代理及系统
技术领域
本发明涉及集群服务领域,尤其涉及一种用于后台集群服务的负载均衡分配方法、代理及系统。
背景技术
在互联网海量服务开发任务中,后台服务的集群设计和集群部署是软件开发人员必须解决的一个问题。服务器之间的差异性以及网络的不确定性,对集群部署的服务稳定性产生了非常大的影响。如何在服务器性能差异比较大的服务之间最优分配服务,如何在网络或服务异常时把请求导向正常的环境和服务,以及异常恢复正常时能够将其重新加入请求分发列表,成为了后台服务开发人员需要解决的课题。
一般的处理方法是在服务的配置文件中,对每个网络接口调用配置目标IP和端口,在服务启动时将配置加载到内存,当网络或服务异常及恢复正常时,手动修改配置文件然后重启服务。另外的一种方法是通过一个配置中心进行配置,业务服务实时从配置中心获取最新的服务配置信息,当网络异常和恢复正常时,修改配置中心的配置即可。
第一种方法的缺点是,当异常发生时需要修改配置和重启服务,这需要中断服务从而使业务系统不能服务客户,由于不具备动态调整能力只能对业务请求进行简单的负载均衡和服务请求转发。第二种通过配置中心进行配置的方法,虽然在异常时不需要重启服务,但不能自适应实际环境情况,很难实现最大化使用服务器的处理能力,当异常出现时需要人工干涉才能进行请求的正确分发,同样也只能对业务请求进行简单的负载均衡和服务请求转发。
因此,现有技术存在缺陷,需要改进。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种用于后台集群服务的负载均衡分配方法、代理及系统。
本发明解决其技术问题所采用的技术方案是:构造一种用于后台集群服务的负载均衡分配方法,包括:
S1、在一个时间区间内,基于各个服务器的初始权重/步骤S2重新设定的权重,根据负载均衡算法分配连接请求给相应的服务器;
S2、在一个时间区间结束后,根据在该时间区间内各个服务器的响应时间和成功率,重新计算并设定各个服务器的权值,启动下一个时间区间并进入步骤S1。
在本发明所述的用于后台集群服务的负载均衡分配方法中,所述步骤S2包括:
S21、在一个时间区间结束后,分别获取在最新结束的时间区间内各个服务器的响应时间和成功率;
S22、基于各个服务器的响应时间分别计算各个服务器的平均响应时间,基于各个服务器的平均响应时间计算得到平均响应时间之积和平均响应时间之和;
S23、分别基于公式(1)确定各个服务器的响应时间因子:
β = Pr o T ‾ * S u m - - - ( 1 )
S24、分别基于公式(2)计算并设定各个服务器的权值:
W=P*β2*C(2)
S25、如果某个服务器的权值大于Wmax,则将该某个服务器的权值设定为Wmax;如果某个服务器的权值小于1,则将该某个服务器的权值设定为1;
S26、启动下一个时间区间并进入步骤S1;
其中,β代表本机的响应时间因子,Pro代表步骤S22中的平均响应时间之积,Sum代表步骤S22中的平均响应时间之和,代表本机的平均响应时间;W代表本机的权值,P代表本机的成功率,C代表权值基数,为一个设定好的整数,Wmax代表最高权值,为一个预设的大于1的整数。
在本发明所述的用于后台集群服务的负载均衡分配方法中,所述步骤S2还包括:在进入每个时间区间之前读取配置信息,并根据配置信息将集群服务的集群数量增加所对应的服务器的权值设定为1,将集群服务的集群数量减小所对应的服务器在步骤S1中从所有的服务器中直接删除。
在本发明所述的用于后台集群服务的负载均衡分配方法中,Wmax为100。
在本发明所述的用于后台集群服务的负载均衡分配方法中,所述步骤S1中所述的根据负载均衡算法分配连接给相应的服务器包括:
S11、对于第一个时间区间,各个服务器的权值为初始权重,其他时间区间各个服务器的权值为步骤S2中设定的权重;
S12、确定所有服务器权值的最大公约数,将比较因子设置为所有服务器权值中的最大权值;
S13、依次比较每台服务器的权值与比较因子的大小,如果某个服务器的权值大于或等于比较因子,则将该服务器分配给下一个连接请求;
S14、当所有的服务器比较完成后,将比较因子以最大公约数为步长递减;如果比较因子小于0,则将比较因子重新设置为最大权值,跳转至步骤S13。
在本发明所述的用于后台集群服务的负载均衡分配方法中,初始权重设置为1。
本发明还公开了一种用于后台集群服务的负载均衡分配代理,包括
负载分配模块:用于在一个时间区间内,基于各个服务器的初始权重/权值修正模块重新设定的权重,根据负载均衡算法分配连接请求给相应的服务器;
权值修正模块:在一个时间区间结束后,根据在该时间区间内各个服务器的响应时间和成功率,重新计算并设定各个服务器的权值,启动下一个时间区间并触发负载分配模块工作。
在本发明所述的用于后台集群服务的负载均衡分配代理中,所述权值修正模块包括:
响应时间和成功率获取单元:用于在一个时间区间结束后,分别获取在最新结束的时间区间内各个服务器的响应时间和成功率;
响应时间因子计算单元:用于基于各个服务器的响应时间分别计算各个服务器的平均响应时间,基于各个服务器的平均响应时间计算得到平均响应时间之积和平均响应时间之和,再基于公式(1)确定各个服务器的响应时间因子:
β = Pr o T ‾ * S u m - - - ( 1 )
权值计算单元:用于基于公式(2)计算并设定各个服务器的权值,如果某个服务器的权值大于Wmax,则将该某个服务器的权值设定为Wmax;如果某个服务器的权值小于1,则将该某个服务器的权值设定为1;启动下一个时间区间并触发负载分配模块工作;
W=P*β2*C(2)
其中,β代表本机的响应时间因子,Pro代表步骤S22中的平均响应时间之积,Sum代表步骤S22中的平均响应时间之和,代表本机的平均响应时间;W代表本机的权值,P代表本机的成功率,C代表权值基数,为一个设定好的整数,Wmax代表最高权值,为一个预设的大于1的整数。
在本发明所述的用于后台集群服务的负载均衡分配代理中,所述权值修正模块还包括:
权值修正子单元,用于在进入每个时间区间之前读取配置信息,并根据配置信息将集群服务的集群数量增加所对应的服务器的权值设定为1,将集群服务的集群数量减小所对应的服务器在负载分配模块中从所有的服务器中直接删除。
本发明还公开了一种用于后台集群服务的负载均衡分配系统,包括中心配置服务模块和至少一个边缘业务服务模块;其中,所述中心配置服务模块包括:配置数据库、负载均衡中心单元、配置管理服单元;所述边缘业务服务模块包括:如上所述的负载均衡分配代理、业务单元、配置文件;
所述配置管理服单元用于对配置信息进行统一修改并保存至配置数据库中;所述负载均衡中心单元用于负载均衡数据的管理,处理负载均衡分配代理的配置读取请求和接口数据统计;所述负载均衡分配代理用于从负载均衡中心单元读取配置和上报数据统计,管理本地配置文件并写入共享内存,为连接请求分配服务器;业务单元通过与负载均衡分配代理交互获得最优的目的服务器信息,并将业务请求分发到相应的目的服务器。
实施本发明的用于后台集群服务的负载均衡分配方法、代理及系统,具有以下有益效果:本发明以一个时间区间为基本单位,根据在该时间区间内各个服务器的响应时间和成功率,对各个服务器的权值进行一次动态修正,响应时间和成功率实质上反应了各个服务器的在网络、服务器环境及软件服务的实际情况的这些因素影响下的实际性能,因此,本发明对权值的动态修整可以实现在各服务器性能有差异性的环境下最大化使用所有服务器的处理能力,并能根据网络、服务器环境及软件服务的实际情况进行自适应调整使请求得到最优的分发。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明用于后台集群服务的负载均衡分配方法的流程图;
图2是图1中步骤S2的流程图;
图3是本发明用于后台集群服务的负载均衡分配代理的结构示意图;
图4是本发明用于后台集群服务的负载均衡分配系统的结构示意图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
参考图1,是本发明用于后台集群服务的负载均衡分配方法的流程图。本发明的方法主要包括:
S1、在一个时间区间内,基于各个服务器的初始权重/步骤S2重新设定的权重,根据负载均衡算法分配连接请求给相应的服务器;
S2、在一个时间区间结束后,根据在该时间区间内各个服务器的响应时间和成功率,重新计算并设定各个服务器的权值,启动下一个时间区间并进入步骤S1。
如果是初次启动步骤S1,则负载均衡算法是根据初始权重进行负载均衡分配,之后在从步骤S2跳回执行步骤S1中,负载均衡算法是根据步骤S2中设定的权重进行负载均衡分配。
其中,时间区间是根据需要设置的,对此并不做限制。
可以理解的是,负载均衡算法可以采用已有的算法,在此并不做限制。例如背景技术部分介绍的两种方案中就是基于设定好的权值进行均衡分配,只是其权值并不能实现动态调整,所以只能进行简单的负载均衡。
下面详细介绍步骤S2中具体如何实现权值修正。
参考图2,所述步骤S2具体包括:
S21、在一个时间区间结束后,分别获取在最新结束的时间区间内各个服务器的响应时间和成功率;
假如在上个时间区间内某个服务器的连接数量为k,则对个该服务器要获取所有的连接所对应的响应时间:t1、t2…tk
成功率则是根据该k次连接成功的次数计算得到,例如,假如某个服务器的连接数量为k,连接成功的次数为m次(m小于k),则该服务器的成功率为。 P = m k * 100 % .
S22、基于各个服务器的响应时间分别计算各个服务器的平均响应时间该式中的k为具体的一台服务器的连接数量,当然,各个服务器的连接数量k是根据步骤S1确定的。然后基于各个服务器的平均响应时间计算得到平均响应时间之积和平均响应时间之和n代表所有服务器的总数;
S23、分别基于公式(1)确定各个服务器的响应时间因子:
β = Pr o T ‾ * S u m - - - ( 1 )
其中,β代表本机的响应时间因子,Pro代表步骤S22中的平均响应时间之积,Sum代表步骤S22中的平均响应时间之和,代表本机的平均响应时间;
S24、分别基于公式(2)计算并设定各个服务器的权值:
W=P*β2*C(2)
S25、如果某个服务器的权值大于Wmax,例如100,则将该某个服务器的权值设定为Wmax;如果某个服务器的权值小于1,则将该某个服务器的权值设定为1;
S26、启动下一个时间区间并进入步骤S1。
其中,W代表本机的权值,P代表本机的成功率,C代表权值基数,为一个设定好的整数,Wmax代表最高权值,为一个预设的大于1的整数。
权值基数C的作用使得最后计算得到的权值W是一个较大的实数以方便后续负载均衡算法部分的处理。因为某个服务器的成功率P和响应时间因子β一般都是小于1的数,所以为了使得最后的W是一个较大的实数,可以利用权值基数C对其统一进行转换。
值得注意的是,在步骤S25中,如果某个服务器的权值大于Wmax则将该某个服务器的权值设定为Wmax的优点在于:当连接请求数量较小,避免了把所有连接请求发送到权值最大的这一台服务器中,尽量把连接分发给多个服务器。
在步骤S25中,如果某个服务器的权值小于1则将该某个服务器的权值设定为1的优点在于:如果某个服务器出现异常,则算出来的权值W会很小,但是本发明还是依旧将其权值W设置为1,这样保证了在步骤S1进行负载分配时,还是有对该服务器进行试探,所以一旦其恢复正常,则其响应时间和成功率会提升,最终经过步骤S2会对其权值进行重新设定,这样就能重新给恢复异常的服务器分配连接。
考虑到在分配过程中,可能出现人为的增加集群数量或者删减集群数量,所以优选的,所述步骤S2还包括:在进入每个时间区间之前读取配置信息,并根据配置信息将集群服务的集群数量增加所对应的服务器的权值设定为1,将集群服务的集群数量减小所对应的服务器在步骤S1中从所有的服务器中直接删除。
另外,本发明中步骤S1中的负载均衡算法采用的加权轮询算法,具体过程如下:
S11、对于第一个时间区间,各个服务器的权值为初始权重,其他时间区间各个服务器的权值为步骤S2中设定的权重;
S12、确定所有服务器权值的最大公约数,将比较因子设置为所有服务器权值中的最大权值;
S13、从第一台服务器开始,依次比较每台服务器的权值与比较因子的大小,如果某个服务器的权值大于或等于比较因子,则将该服务器分配给下一个连接请求;
S14、当所有的服务器比较完成后,将比较因子以最大公约数为步长递减;如果比较因子小于0,则将比较因子重新设置为最大权值,跳转至步骤S12。
例如,假如有4台服务器,cw表示比较因子。假如在结束第一个时间区间后,经过步骤S2将4台服务器的权值依次重新设定为:10,20,30,40,则当其进入第二个时间区间时,步骤S1的过程如下:
步骤S11根据步骤S2获取10,20,30,40的权值,确定最大公约数为10。步骤S12设定比较因子为40。然后进入步骤S13,cw=40,从第一台服务器开始,第一台服务器的权值为10,10<cw=40,不满足要求,再比较第二台服务器的权值,为20<cw=40,仍然不满足,再比较第三台服务器的权值,为30<cw=40,仍然不满足,再比较第四台服务器的权值,为40=cw,则将第四台服务器分配给下一个连接请求,以此类推,当所有的服务器比较完成后,步骤S14将比较因子以最大公约数为步长递减,切换到cw=30,然后又跳回至步骤S13,再次从第一台服务器开始比较,第一台服务器的权值为10,10<cw=30,不满足,第二台服务器的权值为20,20<cw=30,不满足,第三台服务器的权值为30,30>=cw=30,则将第三台服务器分配给下一个连接请求,继续第四台服务器的权值为40,40>=cw=30,则将第四台服务器分配给下一个连接请求,依次类推,直至本回合的时间区间结束。
相应的,本发明还提供一种用于后台集群服务的负载均衡分配代理,参考图3,负载均衡分配代理包括
负载分配模块:用于在一个时间区间内,基于各个服务器的初始权重/权值修正模块重新设定的权重,根据负载均衡算法分配连接请求给相应的服务器;
权值修正模块:在一个时间区间结束后,根据在该时间区间内各个服务器的响应时间和成功率,重新计算并设定各个服务器的权值,启动下一个时间区间并触发负载分配模块工作。
其中,所述权值修正模块包括:
响应时间和成功率获取单元:用于在一个时间区间结束后,分别获取在最新结束的时间区间内各个服务器的响应时间和成功率;
响应时间因子计算单元:用于基于各个服务器的响应时间分别计算各个服务器的平均响应时间,基于各个服务器的平均响应时间计算得到平均响应时间之积和平均响应时间之和,再基于公式(1)确定各个服务器的响应时间因子:
β = Pr o T ‾ * S u m - - - ( 1 )
权值计算单元:用于基于公式(2)计算并设定各个服务器的权值,如果某个服务器的权值大于Wmax,则将该某个服务器的权值设定为Wmax;如果某个服务器的权值小于1,则将该某个服务器的权值设定为1;启动下一个时间区间并触发负载分配模块工作;
W=P*β2*C(2)
其中,β代表本机的响应时间因子,Pro代表步骤S22中的平均响应时间之积,Sum代表步骤S22中的平均响应时间之和,代表本机的平均响应时间;W代表本机的权值,P代表本机的成功率,C代表权值基数,为一个设定好的整数,Wmax代表最高权值,为一个预设的大于1的整数。
具体的,所述权值修正模块还包括:
权值修正子单元,用于在进入每个时间区间之前读取配置信息,并根据配置信息将集群服务的集群数量增加所对应的服务器的权值设定为1,将集群服务的集群数量减小所对应的服务器在负载分配模块中从所有的服务器中直接删除。
本发明还公开了一种用于后台集群服务的负载均衡分配系统,参考图4是本发明用于后台集群服务的负载均衡分配系统的结构示意图。
系统包括中心配置服务模块和至少一个边缘业务服务模块;中心配置服务模块进行配置的录入与管理,边缘业务服务模块管理业务相关的配置和自适应调整操作。
具体的,所述中心配置服务模块包括:配置数据库、负载均衡中心单元、配置管理服单元;所述边缘业务服务模块包括:上述的负载均衡分配代理、业务单元、配置文件;
所述配置管理服单元用于对配置信息进行统一修改,例如配置项的增、删、查、改操作;所述负载均衡中心单元用于负载均衡数据的管理,处理负载均衡分配代理的配置读取请求和接口数据统计;为了实现配置的灵活管理,通过配置管理服单元将配置文件写入配置数据库中保存。
为了提高系统性能,配置文件使用共享内存的方式进行存储。所述负载均衡分配代理用于从负载均衡中心单元读取配置和上报数据统计,管理本地配置文件并写入共享内存,通过上述方法对连接请求进行最优分发和自适应调整;业务单元通过与负载均衡分配代理交互获得最优的目的服务器信息,并将业务请求分发到相应的目的服务器。
实施本发明的用于后台集群服务的负载均衡分配方法、代理及系统,具有以下有益效果:本发明以一个时间区间为基本单位,根据在该时间区间内各个服务器的响应时间和成功率,对各个服务器的权值进行一次动态修正,响应时间和成功率实质上反应了各个服务器的在网络、服务器环境及软件服务的实际情况的这些因素影响下的实际性能,因此,本发明对权值的动态修整可以实现在各服务器性能有差异性的环境下最大化使用所有服务器的处理能力,并能根据网络、服务器环境及软件服务的实际情况进行自适应调整使请求得到最优的分发。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (10)

1.一种用于后台集群服务的负载均衡分配方法,其特征在于,包括:
S1、在一个时间区间内,基于各个服务器的初始权重/步骤S2重新设定的权重,根据负载均衡算法分配连接请求给相应的服务器;
S2、在一个时间区间结束后,根据在该时间区间内各个服务器的响应时间和成功率,重新计算并设定各个服务器的权值,启动下一个时间区间并进入步骤S1。
2.根据权利要求1所述的用于后台集群服务的负载均衡分配方法,其特征在于,所述步骤S2包括:
S21、在一个时间区间结束后,分别获取在最新结束的时间区间内各个服务器的响应时间和成功率;
S22、基于各个服务器的响应时间分别计算各个服务器的平均响应时间,基于各个服务器的平均响应时间计算得到平均响应时间之积和平均响应时间之和;
S23、分别基于公式(1)确定各个服务器的响应时间因子:
β = Pr o T ‾ * S u m - - - ( 1 )
S24、分别基于公式(2)计算并设定各个服务器的权值:
W=P*β2*C(2)
S25、如果某个服务器的权值大于Wmax,则将该某个服务器的权值设定为Wmax;如果某个服务器的权值小于1,则将该某个服务器的权值设定为1;
S26、启动下一个时间区间并进入步骤S1;
其中,β代表本机的响应时间因子,Pro代表步骤S22中的平均响应时间之积,Sum代表步骤S22中的平均响应时间之和,T代表本机的平均响应时间;W代表本机的权值,P代表本机的成功率,C代表权值基数,为一个设定好的整数,Wmax代表最高权值,为一个预设的大于1的整数。
3.根据权利要求2所述的用于后台集群服务的负载均衡分配方法,其特征在于,所述步骤S2还包括:在进入每个时间区间之前读取配置信息,并根据配置信息将集群服务的集群数量增加所对应的服务器的权值设定为1,将集群服务的集群数量减小所对应的服务器在步骤S1中从所有的服务器中直接删除。
4.根据权利要求2所述的用于后台集群服务的负载均衡分配方法,其特征在于,Wmax为100。
5.根据权利要求1或4所述的用于后台集群服务的负载均衡分配方法,其特征在于,所述步骤S1中所述的根据负载均衡算法分配连接给相应的服务器包括:
S11、对于第一个时间区间,各个服务器的权值为初始权重,其他时间区间各个服务器的权值为步骤S2中设定的权重;
S12、确定所有服务器权值的最大公约数,将比较因子设置为所有服务器权值中的最大权值;
S13、依次比较每台服务器的权值与比较因子的大小,如果某个服务器的权值大于或等于比较因子,则将该服务器分配给下一个连接请求;
S14、当所有的服务器比较完成后,将比较因子以最大公约数为步长递减;如果比较因子小于0,则将比较因子重新设置为最大权值,跳转至步骤S13。
6.根据权利要求1所述的用于后台集群服务的负载均衡分配方法,其特征在于,初始权重设置为1。
7.一种用于后台集群服务的负载均衡分配代理,其特征在于,包括
负载分配模块:用于在一个时间区间内,基于各个服务器的初始权重/权值修正模块重新设定的权重,根据负载均衡算法分配连接请求给相应的服务器;
权值修正模块:在一个时间区间结束后,根据在该时间区间内各个服务器的响应时间和成功率,重新计算并设定各个服务器的权值,启动下一个时间区间并触发负载分配模块工作。
8.根据权利要求7所述的用于后台集群服务的负载均衡分配代理,其特征在于,所述权值修正模块包括:
响应时间和成功率获取单元:用于在一个时间区间结束后,分别获取在最新结束的时间区间内各个服务器的响应时间和成功率;
响应时间因子计算单元:用于基于各个服务器的响应时间分别计算各个服务器的平均响应时间,基于各个服务器的平均响应时间计算得到平均响应时间之积和平均响应时间之和,再基于公式(1)确定各个服务器的响应时间因子:
β = Pr o T ‾ * S u m - - - ( 1 )
权值计算单元:用于基于公式(2)计算并设定各个服务器的权值,如果某个服务器的权值大于Wmax,则将该某个服务器的权值设定为Wmax;如果某个服务器的权值小于1,则将该某个服务器的权值设定为1;启动下一个时间区间并触发负载分配模块工作;
W=P*β2*C(2)
其中,β代表本机的响应时间因子,Pro代表步骤S22中的平均响应时间之积,Sum代表步骤S22中的平均响应时间之和,T代表本机的平均响应时间;W代表本机的权值,P代表本机的成功率,C代表权值基数,为一个设定好的整数,Wmax代表最高权值,为一个预设的大于1的整数。
9.根据权利要求7所述的用于后台集群服务的负载均衡分配代理,其特征在于,所述权值修正模块还包括:
权值修正子单元,用于在进入每个时间区间之前读取配置信息,并根据配置信息将集群服务的集群数量增加所对应的服务器的权值设定为1,将集群服务的集群数量减小所对应的服务器在负载分配模块中从所有的服务器中直接删除。
10.一种用于后台集群服务的负载均衡分配系统,其特征在于,包括中心配置服务模块和至少一个边缘业务服务模块;其中,所述中心配置服务模块包括:配置数据库、负载均衡中心单元、配置管理服单元;所述边缘业务服务模块包括:如权利要求7-9任一项所述的负载均衡分配代理、业务单元、配置文件;
所述配置管理服单元用于对配置信息进行统一修改并保存至配置数据库中;所述负载均衡中心单元用于负载均衡数据的管理,处理负载均衡分配代理的配置读取请求和接口数据统计;所述负载均衡分配代理用于从负载均衡中心单元读取配置和上报数据统计,管理本地配置文件并写入共享内存,为连接请求分配服务器;业务单元通过与负载均衡分配代理交互获得最优的目的服务器信息,并将业务请求分发到相应的目的服务器。
CN201510780814.6A 2015-11-13 用于后台集群服务的负载均衡分配方法、代理及系统 Active CN105282259B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510780814.6A CN105282259B (zh) 2015-11-13 用于后台集群服务的负载均衡分配方法、代理及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510780814.6A CN105282259B (zh) 2015-11-13 用于后台集群服务的负载均衡分配方法、代理及系统

Publications (2)

Publication Number Publication Date
CN105282259A true CN105282259A (zh) 2016-01-27
CN105282259B CN105282259B (zh) 2018-08-31

Family

ID=

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106776075A (zh) * 2016-12-27 2017-05-31 北京五八信息技术有限公司 消息处理方法及设备
CN106936926A (zh) * 2017-04-18 2017-07-07 广州华多网络科技有限公司 访问数据节点的方法及系统
CN107124472A (zh) * 2017-06-26 2017-09-01 杭州迪普科技股份有限公司 负载均衡方法及装置、计算机可读存储介质
CN107888708A (zh) * 2017-12-25 2018-04-06 山大地纬软件股份有限公司 一种基于Docker容器集群的负载均衡算法
CN108063819A (zh) * 2017-12-18 2018-05-22 迈普通信技术股份有限公司 数据通信方法及装置
CN108111431A (zh) * 2016-11-24 2018-06-01 腾讯科技(北京)有限公司 业务数据发送方法及装置
CN108810075A (zh) * 2018-04-11 2018-11-13 北京小唱科技有限公司 基于服务器端实现的音频修正系统
CN108964947A (zh) * 2017-05-18 2018-12-07 腾讯科技(深圳)有限公司 后台服务质量检测方法和装置、计算机设备
CN109067613A (zh) * 2018-07-19 2018-12-21 北京首汽智行科技有限公司 身份证识别设备联网成功率的测试方法
CN109274707A (zh) * 2017-07-18 2019-01-25 阿里巴巴集团控股有限公司 一种负载调度方法及装置
CN109587220A (zh) * 2018-11-09 2019-04-05 金蝶软件(中国)有限公司 负载均衡方法、装置、计算机设备和存储介质
CN109831524A (zh) * 2019-03-11 2019-05-31 平安科技(深圳)有限公司 一种负载均衡处理方法及装置
CN109995818A (zh) * 2017-12-29 2019-07-09 中移(杭州)信息技术有限公司 一种服务器负载均衡的方法及装置
CN110149378A (zh) * 2019-04-30 2019-08-20 冶金自动化研究设计院 一种基于wlc算法的人防数据服务器集群
CN110389841A (zh) * 2019-07-25 2019-10-29 中南民族大学 一种服务器负载均衡方法、装置和存储介质
CN110502344A (zh) * 2019-08-26 2019-11-26 联想(北京)有限公司 一种数据调整方法及装置
CN110839086A (zh) * 2019-12-23 2020-02-25 吉林省民航机场集团公司 一种高并发负载均衡处理方法
CN111176843A (zh) * 2019-12-23 2020-05-19 中国平安财产保险股份有限公司 基于多维度的负载均衡方法、装置及相关设备
CN111416869A (zh) * 2020-03-26 2020-07-14 华泰证券股份有限公司 一种分布式集群中节点权重调整的方法
CN112862117A (zh) * 2021-01-18 2021-05-28 广东便捷神科技股份有限公司 无人零售终端机的维保运营管理方法及系统
CN115174686A (zh) * 2022-07-12 2022-10-11 江苏苏宁银行股份有限公司 一种基于服务效率的多个服务通道权重动态调整方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1434393A (zh) * 2003-02-24 2003-08-06 武汉大学 一种集群服务器的动态负载均衡方法
US20070143460A1 (en) * 2005-12-19 2007-06-21 International Business Machines Corporation Load-balancing metrics for adaptive dispatching of long asynchronous network requests
CN101719082A (zh) * 2009-12-24 2010-06-02 中国科学院计算技术研究所 虚拟化计算平台中应用请求调度的方法及其系统
CN103401947A (zh) * 2013-08-20 2013-11-20 曙光信息产业(北京)有限公司 多个服务器的任务分配方法和装置
CN105007312A (zh) * 2015-07-03 2015-10-28 叶秀兰 一种云计算服务器自适应负载均衡控制方法及控制系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1434393A (zh) * 2003-02-24 2003-08-06 武汉大学 一种集群服务器的动态负载均衡方法
US20070143460A1 (en) * 2005-12-19 2007-06-21 International Business Machines Corporation Load-balancing metrics for adaptive dispatching of long asynchronous network requests
CN101719082A (zh) * 2009-12-24 2010-06-02 中国科学院计算技术研究所 虚拟化计算平台中应用请求调度的方法及其系统
CN103401947A (zh) * 2013-08-20 2013-11-20 曙光信息产业(北京)有限公司 多个服务器的任务分配方法和装置
CN105007312A (zh) * 2015-07-03 2015-10-28 叶秀兰 一种云计算服务器自适应负载均衡控制方法及控制系统

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108111431A (zh) * 2016-11-24 2018-06-01 腾讯科技(北京)有限公司 业务数据发送方法及装置
CN108111431B (zh) * 2016-11-24 2021-09-24 腾讯科技(北京)有限公司 业务数据发送方法、装置、计算设备及计算机可读存储介质
CN106776075A (zh) * 2016-12-27 2017-05-31 北京五八信息技术有限公司 消息处理方法及设备
CN106936926A (zh) * 2017-04-18 2017-07-07 广州华多网络科技有限公司 访问数据节点的方法及系统
CN106936926B (zh) * 2017-04-18 2020-05-15 广州华多网络科技有限公司 访问数据节点的方法及系统
CN108964947B (zh) * 2017-05-18 2020-11-17 腾讯科技(深圳)有限公司 后台服务质量检测方法和装置、计算机设备
CN108964947A (zh) * 2017-05-18 2018-12-07 腾讯科技(深圳)有限公司 后台服务质量检测方法和装置、计算机设备
CN107124472A (zh) * 2017-06-26 2017-09-01 杭州迪普科技股份有限公司 负载均衡方法及装置、计算机可读存储介质
CN109274707A (zh) * 2017-07-18 2019-01-25 阿里巴巴集团控股有限公司 一种负载调度方法及装置
CN108063819A (zh) * 2017-12-18 2018-05-22 迈普通信技术股份有限公司 数据通信方法及装置
CN107888708A (zh) * 2017-12-25 2018-04-06 山大地纬软件股份有限公司 一种基于Docker容器集群的负载均衡算法
CN109995818A (zh) * 2017-12-29 2019-07-09 中移(杭州)信息技术有限公司 一种服务器负载均衡的方法及装置
CN108810075A (zh) * 2018-04-11 2018-11-13 北京小唱科技有限公司 基于服务器端实现的音频修正系统
CN108810075B (zh) * 2018-04-11 2020-12-18 北京小唱科技有限公司 基于服务器端实现的音频修正系统
CN109067613B (zh) * 2018-07-19 2020-07-31 北京首汽智行科技有限公司 身份证识别设备联网成功率的测试方法
CN109067613A (zh) * 2018-07-19 2018-12-21 北京首汽智行科技有限公司 身份证识别设备联网成功率的测试方法
CN109587220A (zh) * 2018-11-09 2019-04-05 金蝶软件(中国)有限公司 负载均衡方法、装置、计算机设备和存储介质
CN109587220B (zh) * 2018-11-09 2021-09-10 金蝶软件(中国)有限公司 负载均衡方法、装置、计算机设备和存储介质
CN109831524A (zh) * 2019-03-11 2019-05-31 平安科技(深圳)有限公司 一种负载均衡处理方法及装置
CN110149378A (zh) * 2019-04-30 2019-08-20 冶金自动化研究设计院 一种基于wlc算法的人防数据服务器集群
CN110389841A (zh) * 2019-07-25 2019-10-29 中南民族大学 一种服务器负载均衡方法、装置和存储介质
CN110502344A (zh) * 2019-08-26 2019-11-26 联想(北京)有限公司 一种数据调整方法及装置
CN111176843A (zh) * 2019-12-23 2020-05-19 中国平安财产保险股份有限公司 基于多维度的负载均衡方法、装置及相关设备
CN110839086A (zh) * 2019-12-23 2020-02-25 吉林省民航机场集团公司 一种高并发负载均衡处理方法
CN111416869A (zh) * 2020-03-26 2020-07-14 华泰证券股份有限公司 一种分布式集群中节点权重调整的方法
CN112862117A (zh) * 2021-01-18 2021-05-28 广东便捷神科技股份有限公司 无人零售终端机的维保运营管理方法及系统
CN115174686A (zh) * 2022-07-12 2022-10-11 江苏苏宁银行股份有限公司 一种基于服务效率的多个服务通道权重动态调整方法和装置
CN115174686B (zh) * 2022-07-12 2024-03-15 江苏苏宁银行股份有限公司 一种基于服务效率的多个服务通道权重动态调整方法和装置

Similar Documents

Publication Publication Date Title
US20190342230A1 (en) Software load balancer to maximize utilization
CN101471845B (zh) 数据块副本数量调整方法及元数据服务器节点
CN105025053A (zh) 基于云存储技术的分布式文件的上传方法及其系统
CN109391655A (zh) 服务灰度发布方法、装置、系统及存储介质
WO2015196686A1 (zh) 一种数据存储方法以及一种数据存储管理服务器
CN110727738B (zh) 基于数据分片的全局路由系统、电子设备及存储介质
CN108881512A (zh) Ctdb的虚拟ip均衡分配方法、装置、设备及介质
CN113655969B (zh) 一种基于流式分布式存储系统的数据均衡存储方法
CN113051102B (zh) 文件备份方法、装置、系统、存储介质和计算机设备
US20080235481A1 (en) Managing memory in a system that includes a shared memory area and a private memory area
CN110515720B (zh) 云计算系统服务成本与可靠性驱动的作业调度方法
CN1330124C (zh) 虚拟化网络资源的方法和装置
CN111147605A (zh) 服务注册方法、装置和设备
CN111580959B (zh) 一种数据写入方法、数据写入装置、服务器及存储介质
CN109992575B (zh) 大数据的分布式存储系统
CN107908713A (zh) 一种基于Redis集群的分布式动态杜鹃过滤系统及其过滤方法
CN108459926B (zh) 数据异地备份方法、装置及计算机可读介质
CN114493602B (zh) 区块链交易的执行方法、装置、电子设备和存储介质
CN112035579A (zh) 图管理、数据存储、数据查询方法、装置及存储介质
CN115952003A (zh) 一种集群服务器负载均衡的方法、装置、设备及存储介质
CN105282259A (zh) 用于后台集群服务的负载均衡分配方法、代理及系统
CN112751926B (zh) 一种集群中工作节点的管理方法、系统及相关装置
CN108881411A (zh) 一种大规模节点下ctdb集群分组的方法
CN109818767B (zh) 一种Redis集群容量调整的方法、装置及存储介质
CN105282259B (zh) 用于后台集群服务的负载均衡分配方法、代理及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant