CN102075425B - 一种业务分配方法和负载均衡器 - Google Patents
一种业务分配方法和负载均衡器 Download PDFInfo
- Publication number
- CN102075425B CN102075425B CN 201110008514 CN201110008514A CN102075425B CN 102075425 B CN102075425 B CN 102075425B CN 201110008514 CN201110008514 CN 201110008514 CN 201110008514 A CN201110008514 A CN 201110008514A CN 102075425 B CN102075425 B CN 102075425B
- Authority
- CN
- China
- Prior art keywords
- record
- node
- reports
- resource
- traffic assignments
- 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.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种业务分配方法和负载均衡器,应用于多系统或多节点之间的业务分配。本发明方法包括:负载均衡器接收各系统/各节点上报的资源使用率;更新本地存储的各系统/各节点的上报记录;生成业务分配表;确定各系统/各节点针对每一种资源类型对应的业务分配比率;根据各种资源类型的对应权重,将待分配业务的业务量划分给各种资源类型;按照各系统/各节点针对每一种资源类型对应的业务分配比率,并行地将每一种资源类型划分的对应业务量分配给各系统/各节点。采用本发明,能实现根据各系统/各节点的当前资源使用状况进行业务的动态分配,使得各系统/各节点之间的实际负荷量基本达到均衡。
Description
本申请是对申请日为2008年12月16日、申请号为200810240010.7、发明名称为″一种业务分配方法和负载均衡器″的发明申请的分案申请。
技术领域
本发明涉及多系统或多节点之间的业务分配,以及进行业务分配的负载均衡器。
背景技术
目前,各个领域中,如金融,电信等,都需要经常面对超大规模的业务,都需要采用多套系统,多个节点,来对整体业务进行负载均衡,以达到保障业务快速,稳定的目的。
通常,负载均衡是为了让多个系统或节点同时处理大量并发的服务请求,以达到高性能的处理。一般情况下,负载均衡的每个系统或节点都是平均的分担总的业务量,并且互相没有差别。这种负载均衡是一种固定的业务分配方式,不能智能地根据实际情况而改变。而实际应用中,各系统或节点的负载情况会根据设备生产厂家、硬件、软件、配置以及损耗程度的不同,不可能做到真正意义上的负荷完全一样。如果有部分系统负荷过高,仍然接受平均分配的业务量,则可能导致后续处理速度降低,大量业务积压,最终导致停止工作。
目前,进行业务分配时,另一种解决方法是在负载均衡器上面进行配置,让其对业务按照配置进行分配,达到所有系统共同分配整体业务的目的。但是,这样的解决方案最大的问题就是在面对突发的情况时,依然按照配置文件分配可能会导致一些问题,假设某个系统突然负荷变高,如果还是一直分配给其配置的业务量,则有可能导致其处理速度变慢,而影响部分用户对于该业务的感知。
发明内容
本发明提供一种业务分配方法和负载均衡器,用以解决现有技术中根据固定配置进行业务分配,导致各系统或各节点之间的实际负荷量不均衡的问题。
本发明提供的业务分配方法,应用于多系统或/多节点之间的业务分配,包括:
负载均衡器接收各系统/各节点根据预先设置的需要上报的各种资源类型上报的与所述各种资源类型对应的资源使用率;
所述负载均衡器根据本次各系统/各节点上报的所述资源使用率更新本地存储的各系统/各节点的上报记录;
在所述上报记录中,选择资源使用率未超过设定的对应使用率阈值、且当前未失效的系统/节点的对应上报记录,生成业务分配表;
根据所述业务分配表的各上报记录中存储的与每一种资源类型对应的资源使用率,分别确定出所述业务分配表中各记录对应的各系统/各节点针对每一种资源类型对应的业务分配比率;
根据所述各种资源类型的对应权重,将待分配业务的业务量划分给所述各种资源类型;
按照所述业务分配表中各上报记录对应的各系统/各节点针对每一种资源类型对应的业务分配比率,并行地将每一种资源类型划分的对应业务量分配给所述业务分配表中各上报记录对应的各系统/各节点。
所述负载均衡器通过与所述各系统/各节点之间的控制面连接,接收所述各系统/各节点上报的自身资源使用率;以及
所述负载均衡器通过与所述各系统/各节点之间的业务面连接,将待分配业务分配给所述业务分配表中各上报记录对应的各系统/各节点。
所述各系统/各节点周期统计自身的资源使用率;
当满足设定的上报条件时,上报统计的资源使用率给所述负载均衡器。
所述当满足设定的上报条件时,上报统计的资源使用率给所述负载均衡器,具体包括:
当统计的资源使用率其中之一超过设定的对应上报阈值时,上报统计的资源使用率给所述负载均衡器;和/或
当统计的资源使用率其中之一的变化量超过设定的对应变化量阈值时,上报统计的资源使用率给所述负载均衡器。
所述生成业务分配表,具体包括:
对每条所述上报记录分别计算对应的记录更新时间与当前时间的差值,并将所述差值与设定的差值阈值比较,当所述差值超过设定的差值阈值时,进一步确定该上报记录的对应系统/节点当前是否已失效;若该上报记录的对应系统/节点当前未失效,则将该上报记录对应的记录更新时间修改为当前时间,否则将该上报记录标记为失效记录;以及
将每条所述上报记录包含的各资源使用率,分别与设定的对应使用率阈值比较,当所述资源使用率其中之一超过设定的对应使用率阈值时,将该上报记录标记为失效记录;
选择未标记为失效记录的其余上报记录,生成业务分配表。
一种负载均衡器,包括:
资源使用状况接收单元,用于接收各系统/各节点根据预先设置的需要上报的各种资源类型上报的与所述各种资源类型对应的资源使用率;
记录存储更新单元,用于根据各系统/各节点本次上报的资源使用率更新存储的所述各系统/各节点的上报记录;
业务分配表生成单元,用于在存储的所述上报记录中,选择资源使用率未超过设定的对应使用率阈值、且当前未失效的系统/节点的对应上报记录,生成业务分配表;
业务分配比率确定单元,用于根据所述业务分配表的各上报记录中存储的与每一种资源类型对应的资源使用率,分别确定出所述业务分配表中各记录对应的各系统/各节点针对每一种资源类型对应的业务分配比率;
业务分配单元,用于根据所述各种资源类型的对应权重,将待分配业务的业务量划分给所述各种资源类型,以及按照所述各系统/各节点针对每一种资源类型对应的业务分配比率,并行地将每一种资源类型划分的对应业务量分配给所述业务分配表中各上报记录对应的各系统/各节点。
所述资源使用状况接收单元通过与所述各系统/各节点之间的控制面连接接口,接收所述各系统/各节点上报的自身资源使用率;
所述业务分配单元通过与所述各系统/各节点之间的业务面连接接口,将待分配业务分配给所述业务分配表中各上报记录对应的各系统/各节点。
所述业务分配表生成单元,具体用于对所述记录存储更新单元中存储的每条所述上报记录,分别计算对应的记录更新时间与当前时间的差值,并将所述差值与设定的差值阈值比较,当所述差值超过设定的差值阈值时,进一步确定该上报记录的对应系统/节点当前是否已失效;若该上报记录的对应系统/节点当前未失效,则将该上报记录对应的记录更新时间修改为当前时间,否则将该上报记录标记为失效记录;以及
将每条所述上报记录包含的各资源使用率,分别与设定的对应使用率阈值比较,当所述资源使用率其中之一超过设定的对应使用率阈值时,将该上报记录标记为失效记录;以及
选择未标记为失效记录的其余上报记录,生成业务分配表。
本发明提供的业务分配方法,应用于多系统或多节点之间的业务分配,由负载均衡器接收各系统/各节点上报的自身资源使用状况;根据各系统/各节点上报的资源使用状况,确定出各系统/各节点对应的业务分配比率;按照业务分配比率,将待分配业务分配给各系统/各节点。由于各系统/各节点上报的自身资源使用状况,表征了各系统/各节点的当前实际资源使用状况,负载均衡器在进行业务分配时,根据各系统/各节点的当前实际资源使用状况,确定出将待分配业务分配给各系统/各节点的一个对应的业务分配比率,按照确定出的业务分配比率进行业务分配,从而实现根据各系统/各节点的当前资源使用状况进行业务的动态分配(当前资源使用率较高的系统或节点,对应的业务分配比率较低;反之,当前资源使用率较低的系统或节点,对应的业务分配比率较高),使得各系统/各节点之间的实际负荷量基本达到均衡。
附图说明
图1为本发明实施例提供的业务分配方法流程图;
图2为本发明实施例提供的多系统/多节点与负载均衡器的连接关系示意图;
图3为本发明实施例提供的由负载均衡器实现多系统业务分配的流程图;
图4为本发明实施例提供的业务量分配示意图;
图5A、图5B为本发明实施列提供的由处理进行组实现各种资源类型划分的业务分配的对应关系示意图;
图6为本发明实施列提供的负载均衡器结构示意图。
具体实施方式
本发明提供一种业务分配方法和负载均衡器,应用于多系统之间的业务分配,或者应用于多节点之间的业务分配(为描述简便,采用系统/节点的方式,表示系统或者节点),通过各系统/各节点上报自身的资源使用状况,由负载均衡器根据各系统/各节点上的资源使用状况,进行业务的动态分配。
下面结合附图,对本发明提供的业务分配方法,进行详细阐述。
参见图1,为本发明实施例提供的业务分配方法流程图,具体包括:
步骤S101、负载均衡器接收各系统/各节点上报的自身资源使用状况;
步骤S102、根据各系统/各节点上报的资源使用状况,确定出各系统/各节点的业务分配比率;
步骤S103、按照确定出的业务分配比率,将待分配业务分配给各系统/各节点。
参见图2,为多个系统(每一个系统也可以是一个节点)与负载均衡器的连接关系示意图。图2中,黑虚线表示负载均衡器与各系统之间的控制面连接,黑实线表示负载均衡器与各系统之间的用户面连接。负载均衡器通过与各系统之间的控制面连接,接收各系统上报的自身资源使用状况;以及通过与各系统之间的业务面连接,将待分配业务分配给各系统。
图2所示组网图,将负载均衡器和各系统之间的网络连接分为控制面连接和业务面连接,控制面连接和业务面连接可以在逻辑上分割也可以在物理上分割。这样可以实现控制与承载相分离,其好处是由于智能的负载均衡技术往往需要较大量且频繁的上下行控制信息,这样将控制信息与业务信息完全分开,不仅可以保证两方面完全不会冲突或者互相间的带宽占用,同时在扩展方面也可以分别只考虑其中某一方面的需求而不会导致对另一方面的负面影响。一般来说,控制面更注重控制信息的复杂和智能性,而业务面更注重对于业务准确且快速的下发处理。因此特性完全不同的两个方面,如果能够分开考虑,则可以提高智能处理的效率。
下面以多个系统向负载均衡器上报自身资源使用率,由负载均衡器实现负载均衡为例,对本发明提供的上述方法进行详细说明。
参见图3,具体实现步骤包括:
步骤S301、各系统统计自身资源使用状况。
步骤S302、判断是否满足上报条件,若不满足上报条件,则转至步骤S301;若满足上报条件,继续步骤S303。
步骤S303、各系统向负载均衡器上报统计的自身资源使用率。
步骤S304、负载均衡器根据本次各系统上报的资源使用率,更新本地存储的上报记录。在该步骤中,负载均衡器还存储各记录对应的记录更新时间。
步骤S305、负载均衡器根据存储的上报记录,生成业务分配表。
步骤S306、根据业务分配表中各记录对应的系统上报的资源使用率,确定出各系统对应的业务分配比率。
步骤S307、根据各系统对应的业务分配比率,将待分配业务分配给各系统。
上述各步骤具体描述如下:
步骤S301中,各系统可以根据自身的情况设置一个足够小的时间间隔Δt来通过某种方式统计本系统的各种资源类型的当前使用率x。具体统计的资源类型取决于其是否对系统的整体负荷能力有影响。例如:假设系统上报的具体资源类型包括:CPU、内存和输入/输出(I/O)端口,则系统每隔Δt时长,统计CPU使用率x(1),内存使用率x(2),I/O端口使用率x(3)。
步骤S302中,触发上报的上报条件,例如:
当统计的资源使用率其中之一超过设定的对应上报阈值时,上报统计的资源使用率给负载均衡器;以及当统计的资源使用率其中之一的变化量超过设定的对应变化量阈值时,上报统计的资源使用率给负载均衡器。
假设系统CPU使用率对应的上报阈值为60%、系统内存使用率对应的上报阈值为70%,系统I/O端口使用率对应的上报阈值为80%;若当前周期内统计获得CPU的使用率x(1)为75%,内存使用率x(2)为35%,I/O端口使用率x(3)为45%,则由于CPU使用率x(1)超过了上报阈值60%,满足上报条件,系统将上报本次统计获得的CPU使用率、内存使用率和I/O端口使用率;
另外,系统应该至少保存最近两次统计值,然后就可以得到在Δt内某个资源使用率的变化量Δx。当Δx超过设定的变化量阈值时,系统也将上报本次统计获得的CPU使用率、内存使用率和I/O端口使用率。
一实施例中,某系统在本地存储的一张统计表可以如下表一所示:
表一:
IP | x(1) | Δx(1) | x(2) | Δx(2) | …… | x(n) | Δx(n) | 时间(Time) |
10.0.0.1 | 55% | 8 | 44% | -5 | 10% | 30 | 2008-6-10 20:23 |
表一中,IP表示该系统对应的IP地址,x(1)~x(n)表示系统统计的n种资源类型对应的使用率,Δx(1)~Δx(n)表示对应于每种资源类型最近两次统计值的变化量,时间(Time)表示具体的统计时刻。
在步骤S305中,生成业务分配表具体为:
一方面,在全部上报记录中,对每条上报记录分别计算对应的记录更新时间与当前时间的差值,并将差值与设定的差值阈值比较,当计算出的差值超过设定的差值阈值时,进一步确定该条上报记录的对应系统当前是否已失效;若该上报记录的对应系统当前未失效,则将该上报记录对应的记录更新时间修改为当前时间,否则将该上报记录标记为失效记录;
另一方面,将每条上报记录包含的各资源使用率,分别与设定的对应使用率阈值比较,当资源使用率其中之一超过设定的对应使用率阈值时,将该上报记录标记为失效记录;
最后,选择全部未标记为失效记录的其余上报记录,生成业务分配表。
确定上报记录的对应系统当前是否已失效,可以采用向对应系统发送检测消息,若接收到对应系统的正常回应消息,则判断对应系统未失效;否则,确定对应系统当前已失效。
一实施例中,可以对各上报记录设置一个标识字段(Flag),各记录的Flag字段初始值默认为表示该记录有效的值(设值为OK),对于根据上述方法需要标记为失效记录的对应Flag字段值,修改为表示该记录无效的值NOT OK。选取修改后Flag值为OK的对应记录生成业务分配表。
负载均衡器可以在进行业务分配前,生成该业务分配表;也可以定时生成业务分配表。
下表二为负载均衡器生成的业务分配表的一个具体例子:
表二
IP | x(1) | x(2) | x(3) | …… | x(n) | 时间(Time) | Flag |
10.0.0.1 | 25% | 75% | 30% | …… | 20% | 2008-6-10 20:23 | OK |
10.0.0.2 | 30% | 80% | 46% | …… | 43% | 2008-6-10 20:26 | OK |
10.0.0.3 | 15% | 40% | 85% | …… | 10% | 2008-6-10 20:29 | OK |
表二中,表示有三个系统,系统1对应的IP地址分别为10.0.0.1,系统2对应的IP地址分别为10.0.0.2,系统3对应的IP地址分别为10.0.0.3,每个系统上报了n种资源类型对应的资源使用率。
步骤S306中,根据业务分配表中各记录对应的系统上报的资源使用率,确定出各系统对应的业务分配比率,具体包括:
根据各系统上报的资源使用率,计算出各系统的资源空闲率;用各系统的资源空闲率分别除以各系统的资源空闲率的和值,得到各系统的业务分配比率。
以上表二为例,假设x(1)表示各系统的CPU使用率,x(2)表示各系统内存使用率,其余x(n)表示各系统的其它资源使用率。当前业务需要分配给表二中的系统1、系统2和系统3,则按照各系统的CPU使用率x(1)确定出针对资源类型CPU对应的业务分配比率,具体方法为:
系统1的CPU使用率为25%,则系统1的CPU空闲率为75%;
系统2的CPU使用率为30%,则系统2的CPU空闲率为70%;
系统3的CPU使用率为15%,则系统3的CPU空闲率为85%;
系统1、系统2和系统3的CPU空闲率和值为75%+70%+85%=230%;
系统1针对资源类型CPU,对应业务分配比率为75%/230%=75/230=33%;
系统2针对资源类型CPU,对应业务分配比率为70%/230%=70/230=30%;
系统3针对资源类型CPU,对应业务分配比率为85%/230%=85/230=37%。
同理,按照各系统的内存使用率x(2)确定出针对资源类型内存对应的业务分配比率,具体方法为:
系统1的内存使用率为75%,则系统1的内存空闲率为25%;
系统2的内存使用率为80%,则系统2的内存空闲率为20%;
系统3的内存使用率为40%,则系统3的内存空闲率为60%;
系统1、系统2和系统3的内存空闲率和值为25%+20%+60%=105%;
系统1针对资源类型内存,对应业务分配比率为25%/105%=25/105=24%;
系统2针对资源类型内存,对应业务分配比率为20%/105%=20/105=19%;
系统3针对资源类型内存,对应业务分配比率为60%/105%=60/105=57%。
对于其它的资源类型,同理可以计算出对应的业务分配比率。
实际应用中,各系统可以根据预先设置的需要上报的各种资源类型,上报对应的资源使用率。
在步骤S307中,根据各系统对应的业务分配比率,将待分配业务分配给各系统,具体包括:
如果各系统仅上报了一种资源类型的使用率,则根据上述方法可得到各系统对应的业务分配比率,根据该业务分配比率,将待分配业务分配给各系统。
如果各系统上报了不止一种资源类型的使用率,则需要根据预先设置的各种资源类型的对应权重,将待分配业务的业务量划分给各种资源类型;按照各系统针对每一种资源类型计算出的对应的业务分配比率,并行地将每一种资源类型划分的对应业务量分配给各系统。
仍以上表二为例,针对n种资源类型的对应权重,将待分配业务量划分给n种资源类型,将每一种资源类型划分的对应业务量并行地分配给各系统。参见图4,为业务量分配示意图。图4中,根据各系统上报的n种资源类型,将待分配业务量根据各资源类型对应的权重,划分给n种资源类型(图4中假设各资源类型的权重系数相同,都为1/n)。每一种资源类型划分得到的业务量,都需要分配给各系统(图4中s1、s2、......sp表示共有P个系统参与业务量分配),业务分配原则是:
按照计算出的各系统针对每种资源类型的对应业务分配比率,将划分给该种资源类型的业务量分配给各系统。
例如:假设待分配业务量为M,根据系统的资源类型CPU的对应权重,划分给资源类型CPU的业务量为m1,根据系统的资源类型内存的对应权重,划分给资源类型内存的业务量为m2;仍以上表二为例,则根据各系统的针对资源类型CPU的对应业务分配比率,分配给各系统的业务量分别为:
系统1针对资源类型CPU的对应业务分配比率为33%,针对资源类型CPU分配给系统1的业务量为m1*33%;
系统2针对资源类型CPU的对应业务分配比率为30%,针对资源类型CPU分配给系统2的业务量为m1*30%;
系统3针对资源类型CPU的对应业务分配比率为37%,针对资源类型CPU分配给系统3的业务量为m1*37%。
同理,根据各系统的针对资源类型内存的对应业务分配比率,分配给各系统的业务量分别为:
系统1针对资源类型内存的对应业务分配比率为24%,针对资源类型内存分配给系统1的业务量为m2*24%;
系统2针对资源类型内存的对应业务分配比率为19%,针对资源类型内存分配给系统2的业务量为m2*19%;
系统3针对资源类型内存的对应业务分配比率为57%,针对资源类型内存分配给系统3的业务量为m2*57%。
根据各系统针对各种资源类型对应的业务分配比率(如针对资源类型CPU的对应业务分配比率,针对资源类型内存的对应业务分配比率等),分配业务量给各系统时是并行进行的。
一实施例中,可以同时启动m个进程来并行地进行业务分配。参见图5A,表示m个进程同时针对n种资源类型划分的对应业务量,按照各系统针对每种资源类型的对应业务分配比率进行业务分配的对应关系示意图。图5A中,假设各资源类型的对应权重并不相等,例如,第二种资源类型的权重是第一种资源类型的2倍,则按权重大小进行业务量划分时,第二种资源类型划分得到的业务量将是第一种资源类型划分得到的业务量的2倍,因此,第二种资源类型可以采用两个进程P2和P3来进行业务分配,而第一种资源类型可以只采用一个进程P1来进行业务分配。图5B也是表示m个进程同时针对n种资源类型划分的对应业务量,按照各系统针对每种资源类型的对应业务分配比率进行业务分配的对应关系示意图。与图5A不同的是,图5B中,各种资源类型对应的权重相等,因此每种资源类型都启用两个对应进程来进行业务分配。
采用本发明上述方法,按照各系统的各种资源类型的使用率,确定出各系统针对每一种资源类型的对应业务分配比率,先将待分配业务划分给各种资源类型,再对每种资源类型划分的业务量按照对应的业务分配比率并行地分配给各系统。实现了根据各系统的各种资源的占用状况,合理地、动态地进行业务分配,以确保各系统之间的负载均衡。
上述实施例是以多系统之间的业务分配为例,对于多节点之间的业务分配,同样可以采用本发明上述实施例公开的业务分配方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读取存储介质中,如:ROM/RAM、磁碟、光盘等。
基于同一发明构思,本发明还提供一种负载均衡器,其结构示意图如图6所示,包括:
资源使用状况接收单元61,用于接收各系统/各节点上报的自身资源使用状况;
业务分配比率确定单元62,用于根据各系统/各节点上报的资源使用状况,确定出各系统/各节点的业务分配比率;
业务分配单元63,用于按照业务分配比率确定单元62确定出的业务分配比率,将待分配业务分配给各系统/各节点。
一实施例中,资源使用状况接收单元61通过与各系统/各节点之间的控制面连接接口,接收各系统/各节点上报的自身资源使用状况;业务分配单元63通过与各系统/各节点之间的业务面连接接口,将待分配业务分配给各系统/各节点。
一实施例中,本发明提供的上述负载均衡器还包括:
记录存储更新单元64,用于根据各系统/各节点本次上报的资源使用率更新存储的各系统/各节点的上报记录;
业务分配表生成单元65,用于在记录存储更新单元64存储的上报记录中,选择资源使用率未超过设定的对应使用率阈值、且当前未失效的系统/节点的对应上报记录,生成业务分配表;
业务分配比率确定单元62,具体用于根据生成的业务分配表中各上报记录对应的各系统/各节点的资源使用率,计算出业务分配表中各上报记录对应的各系统/各节点的资源空闲率;用计算出的业务分配表中各上报记录对应的各系统/各节点的资源空闲率,分别除以业务分配表中各上报记录对应的各系统/各节点的资源空闲率的和值,得到业务分配表中各上报记录对应的各系统/各节点的业务分配比率。
一实施例中,业务分配表生成单元65,具体用于对记录存储更新单元64中存储的每条上报记录,分别计算对应的记录更新时间与当前时间的差值,并将差值与设定的差值阈值比较,当差值超过设定的差值阈值时,进一步确定该上报记录的对应系统/节点当前是否已失效;若该上报记录的对应系统/节点当前未失效,则将该上报记录对应的记录更新时间修改为当前时间,否则将该上报记录标记为失效记录;以及将每条上报记录包含的各资源使用率,分别与设定的对应使用率阈值比较,当资源使用率其中之一超过设定的对应使用率阈值时,将该上报记录标记为失效记录;并选择未标记为失效记录的其余上报记录,生成业务分配表。
一实施例中,资源使用状况接收单元61,接收各系统/各节点根据预先设置的需要上报的各种资源类型上报的与各种资源类型对应的资源使用率;
业务分配比率确定单元62,具体用于根据业务分配表的各上报记录中存储的与每一种资源类型对应的资源使用率,分别确定出业务分配表中各记录对应的各系统/各节点针对每一种资源类型对应的业务分配比率;以及根据各种资源类型的对应权重,将待分配业务划分给各种资源类型;再按照各系统/各节点针对每一种资源类型对应的业务分配比率,并行地将每一种资源类型划分的对应业务分配给各系统/各节点。
综上所述,根据本发明提供的业务分配方法,负载均衡器在进行业务分配时,根据各系统/各节点的上报的实际资源使用状况,确定出将待分配业务分配给各系统/各节点的一个对应的业务分配比率,按照确定出的业务分配比率进行业务分配,从而实现根据各系统/各节点的当前资源使用状况进行业务的动态分配。当前资源使用率较高的系统或节点,对应的业务分配比率较低;反之,当前资源使用率较低的系统或节点,对应的业务分配比率较高,从而达到各系统/各节点之间的实际负荷量均衡。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (8)
1.一种业务分配方法,应用于多系统或多节点之间的业务分配,其特征在于,包括:
负载均衡器接收各系统/各节点根据预先设置的需要上报的各种资源类型上报的与所述各种资源类型对应的资源使用率;
所述负载均衡器根据本次各系统/各节点上报的所述资源使用率更新本地存储的各系统/各节点的上报记录;
在所述上报记录中,选择资源使用率未超过设定的对应使用率阈值、且当前未失效的系统/节点的对应上报记录,生成业务分配表;
根据所述业务分配表的各上报记录中存储的与每一种资源类型对应的资源使用率,分别确定出所述业务分配表中各记录对应的各系统/各节点针对每一种资源类型对应的业务分配比率;
根据所述各种资源类型的对应权重,将待分配业务的业务量划分给所述各种资源类型;
按照所述业务分配表中各上报记录对应的各系统/各节点针对每一种资源类型对应的业务分配比率,并行地将每一种资源类型划分的对应业务量分配给所述业务分配表中各上报记录对应的各系统/各节点。
2.如权利要求1所述的方法,其特征在于,所述负载均衡器通过与所述各系统/各节点之间的控制面连接,接收所述各系统/各节点上报的自身资源使用率;以及
所述负载均衡器通过与所述各系统/各节点之间的业务面连接,将待分配业务分配给所述业务分配表中各上报记录对应的各系统/各节点。
3.如权利要求2所述的方法,其特征在于,所述各系统/各节点周期统计自身的资源使用率;
当满足设定的上报条件时,上报统计的资源使用率给所述负载均衡器。
4.如权利要求3所述的方法,其特征在于,所述当满足设定的上报条件时,上报统计的资源使用率给所述负载均衡器,具体包括:
当统计的资源使用率其中之一超过设定的对应上报阈值时,上报统计的资源使用率给所述负载均衡器;和/或
当统计的资源使用率其中之一的变化量超过设定的对应变化量阈值时,上报统计的资源使用率给所述负载均衡器。
5.如权利要求1所述的方法,其特征在于,所述生成业务分配表,具体包括:
对每条所述上报记录分别计算对应的记录更新时间与当前时间的差值,并将所述差值与设定的差值阈值比较,当所述差值超过设定的差值阈值时,进一步确定该上报记录的对应系统/节点当前是否已失效;若该上报记录的对应系统/节点当前未失效,则将该上报记录对应的记录更新时间修改为当前时间,否则将该上报记录标记为失效记录;以及
将每条所述上报记录包含的各资源使用率,分别与设定的对应使用率阈值比较,当所述资源使用率其中之一超过设定的对应使用率阈值时,将该上报记录标记为失效记录;
选择未标记为失效记录的其余上报记录,生成业务分配表。
6.一种负载均衡器,其特征在于,包括:
资源使用状况接收单元,用于接收各系统/各节点根据预先设置的需要上报的各种资源类型上报的与所述各种资源类型对应的资源使用率;
记录存储更新单元,用于根据各系统/各节点本次上报的资源使用率更新存储的所述各系统/各节点的上报记录;
业务分配表生成单元,用于在存储的所述上报记录中,选择资源使用率未超过设定的对应使用率阈值、且当前未失效的系统/节点的对应上报记录,生成业务分配表;
业务分配比率确定单元,用于根据所述业务分配表的各上报记录中存储的与每一种资源类型对应的资源使用率,分别确定出所述业务分配表中各记录对应的各系统/各节点针对每一种资源类型对应的业务分配比率;
业务分配单元,用于根据所述各种资源类型的对应权重,将待分配业务的业务量划分给所述各种资源类型,以及按照所述各系统/各节点针对每一种资源类型对应的业务分配比率,并行地将每一种资源类型划分的对应业务量分配给所述业务分配表中各上报记录对应的各系统/各节点。
7.如权利要求6所述的负载均衡器,其特征在于,所述资源使用状况接收单元通过与所述各系统/各节点之间的控制面连接接口,接收所述各系统/各节点上报的自身资源使用率;
所述业务分配单元通过与所述各系统/各节点之间的业务面连接接口,将待分配业务分配给所述业务分配表中各上报记录对应的各系统/各节点。
8.如权利要求6所述的负载均衡器,其特征在于,所述业务分配表生成单元,具体用于对所述记录存储更新单元中存储的每条所述上报记录,分别计算对应的记录更新时间与当前时间的差值,并将所述差值与设定的差值阈值比较,当所述差值超过设定的差值阈值时,进一步确定该上报记录的对应系统/节点当前是否已失效;若该上报记录的对应系统/节点当前未失效,则将该上报记录对应的记录更新时间修改为当前时间,否则将该上报记录标记为失效记录;以及
将每条所述上报记录包含的各资源使用率,分别与设定的对应使用率阈值比较,当所述资源使用率其中之一超过设定的对应使用率阈值时,将该上报记录标记为失效记录;以及
选择未标记为失效记录的其余上报记录,生成业务分配表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110008514 CN102075425B (zh) | 2008-12-16 | 2008-12-16 | 一种业务分配方法和负载均衡器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110008514 CN102075425B (zh) | 2008-12-16 | 2008-12-16 | 一种业务分配方法和负载均衡器 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008102400107A Division CN101447939B (zh) | 2008-12-16 | 2008-12-16 | 一种业务分配方法和负载均衡器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102075425A CN102075425A (zh) | 2011-05-25 |
CN102075425B true CN102075425B (zh) | 2012-10-03 |
Family
ID=44033777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110008514 Active CN102075425B (zh) | 2008-12-16 | 2008-12-16 | 一种业务分配方法和负载均衡器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102075425B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103841126B (zh) * | 2012-11-20 | 2017-11-21 | 中国移动通信集团辽宁有限公司 | 一种共享资源的调配方法及装置 |
CN104426953A (zh) * | 2013-08-28 | 2015-03-18 | 腾讯科技(深圳)有限公司 | 一种分配计算资源的方法及装置 |
CN103561428B (zh) * | 2013-10-10 | 2017-02-01 | 东软集团股份有限公司 | 短信网关集群系统中的节点弹性分配方法及系统 |
CN103973586A (zh) * | 2014-05-14 | 2014-08-06 | 江苏省无线电科学研究所有限公司 | 一种实现自动气象站无线组网负载平衡的方法 |
CN104991854B (zh) * | 2015-06-12 | 2018-09-04 | 北京奇虎科技有限公司 | 一种服务器资源的监控统计方法和系统 |
CN105389212B (zh) * | 2015-10-21 | 2019-05-24 | 浪潮(北京)电子信息产业有限公司 | 一种作业分配方法和装置 |
CN106815061B (zh) * | 2015-12-01 | 2020-11-24 | 创新先进技术有限公司 | 一种业务处理方法及装置 |
CN108307206A (zh) * | 2017-12-25 | 2018-07-20 | 北京奇艺世纪科技有限公司 | 一种直播编码任务的分配方法及装置 |
CN110311933A (zh) * | 2018-03-20 | 2019-10-08 | 中国移动通信集团有限公司 | 一种均衡业务流量的方法、装置、设备及存储介质 |
CN108600341A (zh) * | 2018-04-09 | 2018-09-28 | 广州悦世界信息科技有限公司 | 一种业务节点分配方法、决策节点及服务器集群 |
CN109408233B (zh) * | 2018-10-17 | 2022-06-03 | 郑州云海信息技术有限公司 | 一种缓存资源分配方法及装置 |
CN114338696B (zh) * | 2022-03-14 | 2022-07-15 | 北京奥星贝斯科技有限公司 | 用于分布式系统的方法及装置 |
CN117979047A (zh) * | 2024-01-31 | 2024-05-03 | 中科世通亨奇(北京)科技有限公司 | 用于直播的媒体资源分配方法、系统、存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1874348A (zh) * | 2006-01-10 | 2006-12-06 | 华为技术有限公司 | 一种多处理单元负载均衡方法和多处理单元系统 |
CN101039522A (zh) * | 2006-03-16 | 2007-09-19 | 日本电气株式会社 | 移动性管理控制技术和移动通信系统 |
WO2007130290A2 (en) * | 2006-05-03 | 2007-11-15 | Cisco Technology, Inc. | System and method for server farm resource allocation |
-
2008
- 2008-12-16 CN CN 201110008514 patent/CN102075425B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1874348A (zh) * | 2006-01-10 | 2006-12-06 | 华为技术有限公司 | 一种多处理单元负载均衡方法和多处理单元系统 |
CN101039522A (zh) * | 2006-03-16 | 2007-09-19 | 日本电气株式会社 | 移动性管理控制技术和移动通信系统 |
WO2007130290A2 (en) * | 2006-05-03 | 2007-11-15 | Cisco Technology, Inc. | System and method for server farm resource allocation |
Non-Patent Citations (4)
Title |
---|
一种基于动态反馈的负载均衡算法研究;郑褀;《计算机时代》;20060228(第2期);第49-50页 * |
增值业务计费系统负载均衡算法研究;曾望年;《硕士学位论文》;20050615;第13-39页 * |
曾望年.增值业务计费系统负载均衡算法研究.《硕士学位论文》.2005,第13-39页. |
郑褀.一种基于动态反馈的负载均衡算法研究.《计算机时代》.2006,(第2期),第49-50页. |
Also Published As
Publication number | Publication date |
---|---|
CN102075425A (zh) | 2011-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101447939B (zh) | 一种业务分配方法和负载均衡器 | |
CN102075425B (zh) | 一种业务分配方法和负载均衡器 | |
CN102611735B (zh) | 一种应用服务的负载均衡方法及系统 | |
CN102546782B (zh) | 一种分布式系统及其数据操作方法 | |
CN108268317B (zh) | 一种资源分配方法及装置 | |
CN102369688B (zh) | 资源动态调整方法和调度设备 | |
CN103401947A (zh) | 多个服务器的任务分配方法和装置 | |
CN110858161A (zh) | 资源分配方法、装置、系统、设备和介质 | |
CN105159610B (zh) | 大规模数据处理系统及方法 | |
CN109218355A (zh) | 负载均衡引擎,客户端,分布式计算系统以及负载均衡方法 | |
CN103227838B (zh) | 一种多重负载均衡处理装置与方法 | |
US20120297056A1 (en) | Extensible centralized dynamic resource distribution in a clustered data grid | |
CN106471773A (zh) | 集成式全局资源分配和负载平衡 | |
CN105072182A (zh) | 一种负载均衡方法、负载均衡器和用户终端 | |
CN105141541A (zh) | 一种基于任务的动态负载均衡调度方法及装置 | |
CN102917077A (zh) | 云计算系统中的资源分配方法 | |
CN105094956A (zh) | 一种基于通道隔离的业务分配方法和装置 | |
CN105721350A (zh) | 一种智能分配带宽的方法及装置 | |
CN101741907A (zh) | 一种均衡服务器负载的方法、系统和主服务器 | |
CN110244901B (zh) | 任务分配方法及装置、分布式存储系统 | |
CN105468458A (zh) | 计算机集群的资源调度方法及系统 | |
KR102410586B1 (ko) | 사물인터넷 엣지 컴퓨팅 환경을 위한 컨테이너 기반 동적 자원 분배 방법 및 장치 | |
CN102394822A (zh) | 一种调整网络传输速率的系统和方法 | |
CN107239347B (zh) | 一种虚拟化场景下的设备资源分配方法和装置 | |
US20050102387A1 (en) | Systems and methods for dynamic management of workloads in clusters |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |