CN109150758B - 节点业务分配方法、装置、系统及计算机可读存储介质 - Google Patents

节点业务分配方法、装置、系统及计算机可读存储介质 Download PDF

Info

Publication number
CN109150758B
CN109150758B CN201710462329.3A CN201710462329A CN109150758B CN 109150758 B CN109150758 B CN 109150758B CN 201710462329 A CN201710462329 A CN 201710462329A CN 109150758 B CN109150758 B CN 109150758B
Authority
CN
China
Prior art keywords
node
nodes
threshold value
horizontal
calculating
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
Application number
CN201710462329.3A
Other languages
English (en)
Other versions
CN109150758A (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201710462329.3A priority Critical patent/CN109150758B/zh
Publication of CN109150758A publication Critical patent/CN109150758A/zh
Application granted granted Critical
Publication of CN109150758B publication Critical patent/CN109150758B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/76Admission control; Resource allocation using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种节点业务分配方法、装置、系统及计算机可读存储介质,属于电信技术领域,该方法包括:获取系统中允许发生宕机事件的节点个数及正常运行的节点个数;获取每次弹性伸缩操作的节点个数;根据每个节点的预设的极限性能值计算水平扩展的门限值和水平收缩的门限值;根据所述水平扩展的门限值和水平收缩的门限值计算节点正常运行期间工作负荷的最佳负载率;并根据所述最佳负载率对所述节点进行业务分配,通过对当前电信行业通用的N+M备份方式进行数学推理,演算出弹性伸缩的理论门限值,具有普适性和一般性,能够准确地判断系统是否达到最佳利用率,从而对每个节点的业务进行合理分配。

Description

节点业务分配方法、装置、系统及计算机可读存储介质
技术领域
本发明涉及电信技术领域,尤其涉及一种节点业务分配方法、装置、系统及计算机可读存储介质。
背景技术
在电信行业,N+M备份是常用的一种备份方式,通常N≥M>0,这种备份方式下,当M个节点发生宕机事件时,另外N个节点可以继续接管业务并且正常运行,不会出现业务损失的情况。N+M有两种方式,一种叫负荷分担方式,此时N和M都在工作,条件允许的情况下,推荐这种方式。另外一种是主备方式,此时M只备份,不工作,造成了一定的资源浪费。这种方式适用于一些重要的节点,并且通常是以N=M=1,即1+1方式备份的。
NFV(Network Function Virtualization)是指网络功能虚拟化,弹性伸缩Scale是NFV当中一个重要的概念,弹性伸缩包括水平扩展Scale-out和水平收缩Scale-in;水平扩展Scale-out是指:当NFV的容量、流量、处理能力等不够时,系统会自动扩展新的节点来承接任务,保证业务不丢失;水平收缩Scale-in是指:当系统节点过多而业务量又较少时,造成一种资源浪费,此时可以减少节点数量。
现有的弹性伸缩的门限值通常都是凭经验决定的,有时误差较大,要么系统不可以做水平扩展,否则会引起系统振荡;要么不可以做水平收缩,否则系统的冗余度不够。
发明内容
有鉴于此,本发明的目的在于提供一种节点业务分配方法、装置、系统及计算机可读存储介质,通过对当前电信行业通用的N+M备份方式进行数学推理,演算出弹性伸缩的理论门限值,具有普适性和一般性,能够准确地判断系统是否达到最佳利用率,从而对每个节点的业务进行合理分配。
本发明解决上述技术问题所采用的技术方案如下:
根据本发明的一个方面,提供的一种节点业务分配方法,包括:
获取系统中允许发生宕机事件的节点个数及正常运行的节点个数;
获取每次弹性伸缩操作的节点个数;
根据每个节点的预设的极限性能值计算水平扩展的门限值和水平收缩的门限值;
根据所述水平扩展的门限值和水平收缩的门限值计算节点正常运行期间工作负荷的最佳负载率;并根据所述最佳负载率对所述节点进行业务分配。
可选地,所述系统为N+M备份方式的系统,其中,N为系统中正常运行的节点个数,M为系统中允许发生宕机事件的节点个数,当系统中有M个节点发送宕机事件时,另外N个节点可以继续接管业务并且正常运行。
可选地,所述根据每个节点的预设的极限性能值计算水平扩展的门限值和水平收缩的门限值包括:
获取每个节点的预设的极限性能值P,设节点当前业务量为S,节点能承接的总业务量为Sall
则水平扩展的门限值表示为:S/Sall≤N/(N+M)*P;
水平收缩的门限值表示为:S/Sall≤(N-n)2/((N-n+M)(N-n+M+1))*P;
其中,n为水平收缩操作的节点个数。
可选地,所述节点正常运行期间工作负荷的最佳负载率表示为:
S/Sall>N2(N+n+M)/((N+M)2(N+M+1))*P。
根据本发明的另一个方面,提供的一种节点业务分配装置,包括:
获取模块,用于获取系统中允许发生宕机事件的节点个数及正常运行的节点个数;获取每次弹性伸缩操作的节点个数;
门限值计算模块,用于根据每个节点的预设的极限性能值计算水平扩展的门限值和水平收缩的门限值;
业务分配模块,用于根据所述水平扩展的门限值和水平收缩的门限值计算节点正常运行期间工作负荷的最佳负载率;并根据所述最佳负载率对所述节点进行业务分配。
可选地,所述系统为N+M备份方式的系统,其中,N为系统中正常运行的节点个数,M为系统中允许发生宕机事件的节点个数,当系统中有M个节点发送宕机事件时,另外N个节点可以继续接管业务并且正常运行。
可选地,所述门限值计算模块包括:
预设单元,用于获取每个节点的预设的极限性能值P,设节点当前业务量为S,节点能承接的总业务量为Sall
水平扩展计算单元,用于计算水平扩展的门限值,表示为:
S/Sall≤N/(N+M)*P;
水平收缩计算单元,用于计算水平收缩的门限值,表示为:
S/Sall≤(N-n)2/((N-n+M)(N-n+M+1))*P;
其中,n为水平收缩操作的节点个数。
可选地,所述节点正常运行期间工作负荷的最佳负载率表示为:
S/Sall>N2(N+n+M)/((N+M)2(N+M+1))*P。
根据本发明的再一个方面,提供的一种SIP信令解密系统,包括存储器、处理器和至少一个被存储在所述存储器中并被配置为由所述处理器执行的应用程序,所述应用程序被配置为用于执行以上所述的SIP信令解密方法。
根据本发明的再一个方面,提供的一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以上所述的SIP信令解密方法。
本发明实施例的一种节点业务分配方法、装置、系统及计算机可读存储介质,该方法包括:获取系统中允许发生宕机事件的节点个数及正常运行的节点个数;获取每次弹性伸缩操作的节点个数;根据每个节点的预设的极限性能值计算水平扩展的门限值和水平收缩的门限值;根据所述水平扩展的门限值和水平收缩的门限值计算节点正常运行期间工作负荷的最佳负载率;并根据所述最佳负载率对所述节点进行业务分配,通过对当前电信行业通用的N+M备份方式进行数学推理,演算出弹性伸缩的理论门限值,具有普适性和一般性,能够准确地判断系统是否达到最佳利用率,从而对每个节点的业务进行合理分配。
附图说明
图1为本发明实施例一提供的一种节点业务分配方法流程图;
图2为本发明实施例一提供的N+M负荷分担方式的业务分配示意图;
图3为本发明实施例一提供的N+M主备方式的业务分配示意图;
图4为本发明实施例一提供的水平扩展的业务分配示意图;
图5为本发明实施例一提供的水平收缩时的业务分配示意图;
图6为本发明实施例一提供的水平扩展的曲线趋势图;
图7为本发明实施例一提供的水平收缩的曲线趋势图;
图8为本发明实施例一提供的节点运行期工作负荷的最佳负载率与水平收缩及水平扩展的三者关系图;
图9为本发明实施例二提供的一种节点业务分配装置示范性结构框图;
图10为图9中门限值计算模块的示范性结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一
如图1所示,在本实施例中,一种节点业务分配方法,包括:
S10、获取系统中允许发生宕机事件的节点个数及正常运行的节点个数;
S20、获取每次弹性伸缩操作的节点个数;
S30、根据每个节点的预设的极限性能值计算水平扩展的门限值和水平收缩的门限值;
S40、根据所述水平扩展的门限值和水平收缩的门限值计算节点正常运行期间工作负荷的最佳负载率;并根据所述最佳负载率对所述节点进行业务分配。
在本实施例中,通过对当前电信行业通用的N+M备份方式进行数学推理,演算出弹性伸缩的理论门限值,具有普适性和一般性,能够准确地判断系统是否达到最佳利用率,从而对每个节点的业务进行合理分配。
在本实施例中,所述系统为N+M备份方式的系统,其中,N为系统中正常运行的节点个数,M为系统中允许发生宕机事件的节点个数,当系统中有M个节点发送宕机事件时,另外N个节点可以继续接管业务并且正常运行;在本实施例中,所述弹性伸缩包括水平扩展和水平收缩。
在本实施例中,节点定义为一个虚拟化资源集群,可以是一个虚机、或者是一个容器,或者是一个逻辑上能执行业务的概念;业务定义为电信领域中接入一路电话,或一个终端附着等一次行为,统称为一次业务。
在本实施例中,极限性能是指,随着一个节点的资源利用率提高,会达到某个瓶颈,从而引起业务丢失,到达不可接受的那个点,就是节点的极限性能。比如不能接受丢包,则随着转发量的增大,设备开始丢包时即是该节点的极限性能,但如果可以接受10-6丢包,如果超过10-6丢包,则此时认为是设备的极限性能。为了统一,将极限性能值P设置为百分比,即当前业务量和节点最大承接业务量的比值。显然这个性能一定可以在实验室通过仪器获取,在本实施例中它是一个已知量。
在本实施例中,所述步骤S30包括:
获取每个节点的预设的极限性能值P,设节点当前业务量为S,节点能承接的总业务量为Sall
则水平扩展的门限值表示为:S/Sall≤N/(N+M)*P;
水平收缩的门限值表示为:S/Sall≤(N-n)2/((N-n+M)(N-n+M+1))*P;
其中,n为水平收缩操作的节点个数。
在本实施例中,所述节点正常运行期间工作负荷的最佳负载率表示为:
S/Sall>N2(N+n+M)/((N+M)2(N+M+1))*P。
特殊地,当n=1时,即为常见的每次scale-out/in一个的操作,此时,
水平扩展scale-out的门限最大为N/(N+M)*P;
水平收缩scale-in的门限最大为(N-1)2/((N+M)(N-1+M))*P。
节点运行期工作负荷的最佳负载率是S/Sall>N2/(N+M)2*P。
在本实施例中,如图2所示,为N+M负荷分担方式的业务分配示意图,当M个节点宕机时,剩余的N个节点承接全部业务;如图3所示,为N+M主备方式的业务分配示意图,当M个节点宕机时,剩余的N个节点(包括备用的M个节点)承接全部业务;由此可以看出,无论是负荷分担的情况还是主备情况,在M个节点宕机后,其业务的分布情况都是一致的,所以后续的讨论中,不再区分是主备还是负荷分担,统一以负荷分担描述。
在本实施例中,以n=1为例,根据附图详细介绍门限值的推导过程:
如图4所示,为水平扩展的业务分配示意图;假设此时的业务量已经达到scale-out的临界值,即再增加1个业务就会触发scale-out,则当M个节点宕机后,其业务平均分担到剩余的N个节点上,平均每个节点额外承接分布M*S/N个业务,加上原来的S个业务,显然这个值不能大于P,否则将出现业务损失,故(M*S/N+S)/Sall≤P,故S/Sall≤N/(N+M)*P;从scale-out的定义来看,该值就是scale-out的最佳门限值。
如图5所示,为水平收缩时的业务分配示意图;当假设此时的业务量已经达到scale-in的临界值,即再减少1个业务就会触发系统scale-in,则该节点分的业务被剩余的N-1+M个节点承接,平均每个节点额外承接S/(N-1+M)个业务,加上原来的S个业务,显然这个值也不能大于scale-out的门限,由令S’=S/(N-1+M)+S,显然此值不能超过scale-out的门限,否则系统会振荡。注意到此时少了一个节点,上式的N其实是N-1故有(M*S’/(N-1)+S’)/Sall≤(N-1)/(N-1+M)*P,将S’替换为S/(N-1+M)+S,并且化简,即得:S/Sall≤(N-1)2/((N+M)(N-1+M))*P,这个值就是scale-in的最佳门限值。
假设系统做了scale-out,则(N+M)*S的业务量被(N+M+1)个节点承接,这个值显然要大于节点在N+1+M个节点下的scale-in的门限值,否则会导致系统又做scale-in,发生振荡,所以
(N+M)*S/(N+M+1)/Sall>(N+1-1)2/((N+1+M)(N+1-1+M))*P,故
S/Sall>N2/(N+M)2*P,这个值就是系统正常工作负荷下的最佳负载率。低于这个值,系统不可以做scale-out,否则必定引起振荡,高于这个值系统不可以做scale-in,否则系统会冗余度不够。无论scale-out/in,其结果都是要将节点负载引导到这个最佳负载率附近。所以当scale的决策条件过多无从选择时,应该选择scale后系统负载值最靠近该工作负荷的那个条件进行处理。
在电信行业中,一个节点的容量往往都比较大,10万量级左右,所以scale-out/in的步长就是一个节点,已经足够应付99%的情况,但为不失一般性,下面再讨论一下一次scale-out/in多个节点的情况,假设节点个数为n;
水平扩展的门限值和n无关,故scale-out的门限仍然是S/Sall≤N/(N+M)*P。
水平收缩的情况下,平均每个节点额外承接S/(N-n+M)个业务,加上原来的S个业务,S’=S/(N-n+M)+S,此值不能大于scale-out的门限,注意到上式的N=N-n,故scale-in的门限是S/Sall≤(N-n)2/((N-n+M)(N-n+M+1))*P。
(N+M)*S的业务量被(N+n+M)个节点承接,平均每个节点承接(N+M)*S/(N+n+M),它与Sall的比值必须必上式的scale-in大,否则系统振荡。系统正常工作的负载应该是S/Sall>N2(N+n+M)/((N+M)2(N+M+1))*P。
按电信设备的实际运维经验,不太可能把门限值设置为一个固定值,通常是设置了一个粘滞区间,比如在±2%,或者±5%之间,这个粘滞区间随各个产品的不同而不同,尚无一定的理论,通常以经验界定。但仍离不开上述的理论指导,令这个值为δ。则至少可以确认,这个波动不能超过系统运行的最佳负载率,即
(N-n)2/((N-n+M)(N-n+M+1))*P+δ≤N2(N+n+M)/((N+M)2(N+M+1))*P≤N/(N+M)*P-δ
当n=1,即每次scale一个节点时,
(N-1)2/((N+M)(N-1+M))*P+δ≤N2/(N+M)2*P≤N/(N+M)*P-δ。
在本实施例中,如图6所示,为水平扩展的曲线趋势图,其中,P设置为70%,n=1,N=1-10,图中所示为M值变化时的不同曲线,从该图中我们可以看到,M值越高,scale-out的门限离节点实际极限性能就越远,换句话说,资源的利用率就越低,在可靠性容许的情况下,尽量设置M=1以达到较高的利用率。
在本实施例中,如图7所示,为水平收缩的曲线趋势图,其中,P设置为70%,n=1,N=1-10,图中所示为M值变化时的不同曲线,从该图中我们可以看到,M值越高,scale-in的门限离节点实际极限性能就越远,换句话说,仍然是资源的利用率就越低,在可靠性容许的情况下,尽量设置M=1以达到较高的利用率。
在本实施例中,如图8所示,为节点运行期工作负荷的最佳负载率与水平收缩及水平扩展的三者关系图,其中,P设置为70%,n=1,N=1-10,图中所示为M值变化时的三者不同曲线,从该图中我们可以看到,三者大概以1/3的比例分布,这与我们直观上感觉是一致的。
实施例二
如图9所示,在本实施例中,一种节点业务分配装置,包括:
获取模块10,用于获取系统中允许发生宕机事件的节点个数及正常运行的节点个数;获取每次弹性伸缩操作的节点个数;
门限值计算模块20,用于根据每个节点的预设的极限性能值计算水平扩展的门限值和水平收缩的门限值;
业务分配模块30,用于根据所述水平扩展的门限值和水平收缩的门限值计算节点正常运行期间工作负荷的最佳负载率;并根据所述最佳负载率对所述节点进行业务分配。
在本实施例中,通过对当前电信行业通用的N+M备份方式进行数学推理,演算出弹性伸缩的理论门限值,具有普适性和一般性,能够准确地判断系统是否达到最佳利用率,从而对每个节点的业务进行合理分配。
在本实施例中,所述系统为N+M备份方式的系统,其中,N为系统中正常运行的节点个数,M为系统中允许发生宕机事件的节点个数,当系统中有M个节点发送宕机事件时,另外N个节点可以继续接管业务并且正常运行。
在本实施例中,节点定义为一个虚拟化资源集群,可以是一个虚机、或者是一个容器,或者是一个逻辑上能执行业务的概念;业务定义为电信领域中接入一路电话,或一个终端附着等一次行为,统称为一次业务。
在本实施例中,极限性能是指,随着一个节点的资源利用率提高,会达到某个瓶颈,从而引起业务丢失,到达不可接受的那个点,就是节点的极限性能。比如不能接受丢包,则随着转发量的增大,设备开始丢包时即是该节点的极限性能,但如果可以接受10-6丢包,如果超过10-6丢包,则此时认为是设备的极限性能。为了统一,将极限性能值P设置为百分比,即当前业务量和节点最大承接业务量的比值。显然这个性能一定可以在实验室通过仪器获取,在本实施例中它是一个已知量。
如图10所示,在本实施例中,所述门限值计算模块包括:
预设单元21,用于获取每个节点的预设的极限性能值P,设节点当前业务量为S,节点能承接的总业务量为Sall
水平扩展计算单元22,用于计算水平扩展的门限值,表示为:
S/Sall≤N/(N+M)*P;
水平收缩计算单元23,用于计算水平收缩的门限值,表示为:
S/Sall≤(N-n)2/((N-n+M)(N-n+M+1))*P;
其中,n为水平收缩操作的节点个数。
在本实施例中,所述节点正常运行期间工作负荷的最佳负载率表示为:
S/Sall>N2(N+n+M)/((N+M)2(N+M+1))*P。
特殊地,当n=1时,即为常见的每次scale-out/in一个的操作,此时,
水平扩展scale-out的门限最大为N/(N+M)*P;
水平收缩scale-in的门限最大为(N-1)2/((N+M)(N-1+M))*P。
节点运行期工作负荷的最佳负载率是S/Sall>N2/(N+M)2*P。
在本实施例中,如图2所示,为N+M负荷分担方式的业务分配示意图,当M个节点宕机时,剩余的N个节点承接全部业务;如图3所示,为N+M主备方式的业务分配示意图,当M个节点宕机时,剩余的N个节点(包括备用的M个节点)承接全部业务;由此可以看出,无论是负荷分担的情况还是主备情况,在M个节点宕机后,其业务的分布情况都是一致的,所以后续的讨论中,不再区分是主备还是负荷分担,统一以负荷分担描述。
在本实施例中,以n=1为例,根据附图详细介绍门限值的推导过程:
如图4所示,为水平扩展的业务分配示意图;假设此时的业务量已经达到scale-out的临界值,即再增加1个业务就会触发scale-out,则当M个节点宕机后,其业务平均分担到剩余的N个节点上,平均每个节点额外承接分布M*S/N个业务,加上原来的S个业务,显然这个值不能大于P,否则将出现业务损失,故(M*S/N+S)/Sall≤P,故S/Sall≤N/(N+M)*P;从scale-out的定义来看,该值就是scale-out的最佳门限值。
如图5所示,为水平收缩时的业务分配示意图;当假设此时的业务量已经达到scale-in的临界值,即再减少1个业务就会触发系统scale-in,则该节点分的业务被剩余的N-1+M个节点承接,平均每个节点额外承接S/(N-1+M)个业务,加上原来的S个业务,显然这个值也不能大于scale-out的门限,由令S’=S/(N-1+M)+S,显然此值不能超过scale-out的门限,否则系统会振荡。注意到此时少了一个节点,上式的N其实是N-1故有(M*S’/(N-1)+S’)/Sall≤(N-1)/(N-1+M)*P,将S’替换为S/(N-1+M)+S,并且化简,即得:S/Sall≤(N-1)2/((N+M)(N-1+M))*P,这个值就是scale-in的最佳门限值。
假设系统做了scale-out,则(N+M)*S的业务量被(N+M+1)个节点承接,这个值显然要大于节点在N+1+M个节点下的scale-in的门限值,否则会导致系统又做scale-in,发生振荡,所以(N+M)*S/(N+M+1)/Sall>(N+1-1)2/((N+1+M)(N+1-1+M))*P,故
S/Sall>N2/(N+M)2*P,这个值就是系统正常工作负荷下的最佳负载率。低于这个值,系统不可以做scale-out,否则必定引起振荡,高于这个值系统不可以做scale-in,否则系统会冗余度不够。无论scale-out/in,其结果都是要将节点负载引导到这个最佳负载率附近。所以当scale的决策条件过多无从选择时,应该选择scale后系统负载值最靠近该工作负荷的那个条件进行处理。
在电信行业中,一个节点的容量往往都比较大,10万量级左右,所以scale-out/in的步长就是一个节点,已经足够应付99%的情况,但为不失一般性,下面再讨论一下一次scale-out/in多个节点的情况,假设节点个数为n;
水平扩展的门限值和n无关,故scale-out的门限仍然是S/Sall≤N/(N+M)*P。
水平收缩的情况下,平均每个节点额外承接S/(N-n+M)个业务,加上原来的S个业务,S’=S/(N-n+M)+S,此值不能大于scale-out的门限,注意到上式的N=N-n,故scale-in的门限是S/Sall≤(N-n)2/((N-n+M)(N-n+M+1))*P。
(N+M)*S的业务量被(N+n+M)个节点承接,平均每个节点承接(N+M)*S/(N+n+M),它与Sall的比值必须必上式的scale-in大,否则系统振荡。系统正常工作的负载应该是S/Sall>N2(N+n+M)/((N+M)2(N+M+1))*P。
按电信设备的实际运维经验,不太可能把门限值设置为一个固定值,通常是设置了一个粘滞区间,比如在±2%,或者±5%之间,这个粘滞区间随各个产品的不同而不同,尚无一定的理论,通常以经验界定。但仍离不开上述的理论指导,令这个值为δ。则至少可以确认,这个波动不能超过系统运行的最佳负载率,即
(N-n)2/((N-n+M)(N-n+M+1))*P+δ≤N2(N+n+M)/((N+M)2(N+M+1))*P≤N/(N+M)*P-δ
当n=1,即每次scale一个节点时,
(N-1)2/((N+M)(N-1+M))*P+δ≤N2/(N+M)2*P≤N/(N+M)*P-δ。
在本实施例中,如图6所示,为水平扩展的曲线趋势图,其中,P设置为70%,n=1,N=1-10,图中所示为M值变化时的不同曲线,从该图中我们可以看到,M值越高,scale-out的门限离节点实际极限性能就越远,换句话说,资源的利用率就越低,在可靠性容许的情况下,尽量设置M=1以达到较高的利用率。
在本实施例中,如图7所示,为水平收缩的曲线趋势图,其中,P设置为70%,n=1,N=1-10,图中所示为M值变化时的不同曲线,从该图中我们可以看到,M值越高,scale-in的门限离节点实际极限性能就越远,换句话说,仍然是资源的利用率就越低,在可靠性容许的情况下,尽量设置M=1以达到较高的利用率。
在本实施例中,如图8所示,为节点运行期工作负荷的最佳负载率与水平收缩及水平扩展的三者关系图,其中,P设置为70%,n=1,N=1-10,图中所示为M值变化时的三者不同曲线,从该图中我们可以看到,三者大概以1/3的比例分布,这与我们直观上感觉是一致的。
实施例三
在本实施例中,一种节点业务分配系统,包括存储器、处理器和至少一个被存储在所述存储器中并被配置为由所述处理器执行的应用程序,所述应用程序被配置为用于执行实施例一所述的节点业务分配方法。
实施例四
本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述节点业务分配方法实施例中任一所述的方法实施例。
需要说明的是,上述装置、系统实和计算机可读存储介质实施例与方法实施例属于同一构思,其具体实现过程详见方法实施例,且方法实施例中的技术特征在装置实施例中均对应适用,这里不再赘述。
本发明实施例的一种节点业务分配方法、装置、系统及计算机可读存储介质,该方法包括:获取系统中允许发生宕机事件的节点个数及正常运行的节点个数;获取每次弹性伸缩操作的节点个数;根据每个节点的预设的极限性能值计算水平扩展的门限值和水平收缩的门限值;根据所述水平扩展的门限值和水平收缩的门限值计算节点正常运行期间工作负荷的最佳负载率;并根据所述最佳负载率对所述节点进行业务分配,通过对当前电信行业通用的N+M备份方式进行数学推理,演算出弹性伸缩的理论门限值,具有普适性和一般性,能够准确地判断系统是否达到最佳利用率,从而对每个节点的业务进行合理分配。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。本领域技术人员不脱离本发明的范围和实质内所作的任何修改、等同替换和改进,均应在本发明的权利范围之内。

Claims (8)

1.一种节点业务分配方法,其特征在于,包括:
获取系统中允许发生宕机事件的节点个数及正常运行的节点个数;
获取每次弹性伸缩操作的节点个数;
根据每个节点的预设的极限性能值计算水平扩展的门限值和水平收缩的门限值;
根据所述水平扩展的门限值和水平收缩的门限值计算节点正常运行期间工作负荷的最佳负载率;并根据所述最佳负载率对所述节点进行业务分配;
其中,所述系统为N+M备份方式的系统,其中,N为系统中正常运行的节点个数,M为系统中允许发生宕机事件的节点个数,当系统中有M个节点发送宕机事件时,另外N个节点可以继续接管业务并且正常运行。
2.根据权利要求1所述的一种节点业务分配方法,其特征在于,所述根据每个节点的预设的极限性能值计算水平扩展的门限值和水平收缩的门限值包括:
获取每个节点的预设的极限性能值P,设节点当前业务量为S,节点能承接的总业务量为Sall
则水平扩展的门限值表示为:S/Sall≤N/(N+M)*P;
水平收缩的门限值表示为:S/Sall≤(N-n)2/((N-n+M)(N-n+M+1))*P;
其中,n为水平收缩操作的节点个数。
3.根据权利要求2所述的一种节点业务分配方法,其特征在于,所述节点正常运行期间工作负荷的最佳负载率表示为:
S/Sall>N2(N+n+M)/((N+M)2(N+M+1))*P。
4.一种节点业务分配装置,其特征在于,包括:
获取模块,用于获取系统中允许发生宕机事件的节点个数及正常运行的节点个数;获取每次弹性伸缩操作的节点个数;
门限值计算模块,用于根据每个节点的预设的极限性能值计算水平扩展的门限值和水平收缩的门限值;
业务分配模块,用于根据所述水平扩展的门限值和水平收缩的门限值计算节点正常运行期间工作负荷的最佳负载率;并根据所述最佳负载率对所述节点进行业务分配;
其中,所述系统为N+M备份方式的系统,其中,N为系统中正常运行的节点个数,M为系统中允许发生宕机事件的节点个数,当系统中有M个节点发送宕机事件时,另外N个节点可以继续接管业务并且正常运行。
5.根据权利要求4所述的一种节点业务分配装置,其特征在于,所述门限值计算模块包括:
预设单元,用于获取每个节点的预设的极限性能值P,设节点当前业务量为S,节点能承接的总业务量为Sall
水平扩展计算单元,用于计算水平扩展的门限值,表示为:
S/Sall≤N/(N+M)*P;
水平收缩计算单元,用于计算水平收缩的门限值,表示为:
S/Sall≤(N-n)2/((N-n+M)(N-n+M+1))*P;
其中,n为水平收缩操作的节点个数。
6.根据权利要求5所述的一种节点业务分配装置,其特征在于,所述节点正常运行期间工作负荷的最佳负载率表示为:
S/Sall>N2(N+n+M)/((N+M)2(N+M+1))*P。
7.一种节点业务分配系统,包括存储器、处理器和至少一个被存储在所述存储器中并被配置为由所述处理器执行的应用程序,其特征在于,所述应用程序被配置为用于执行权利要求1-3任一项所述的节点业务分配方法。
8.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1至3中任一所述的节点业务分配方法。
CN201710462329.3A 2017-06-19 2017-06-19 节点业务分配方法、装置、系统及计算机可读存储介质 Active CN109150758B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710462329.3A CN109150758B (zh) 2017-06-19 2017-06-19 节点业务分配方法、装置、系统及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710462329.3A CN109150758B (zh) 2017-06-19 2017-06-19 节点业务分配方法、装置、系统及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN109150758A CN109150758A (zh) 2019-01-04
CN109150758B true CN109150758B (zh) 2023-04-18

Family

ID=64803960

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710462329.3A Active CN109150758B (zh) 2017-06-19 2017-06-19 节点业务分配方法、装置、系统及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN109150758B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309025B (zh) * 2019-05-21 2023-02-14 平安普惠企业管理有限公司 App崩溃的修复方法及相关设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100302944A1 (en) * 2009-05-29 2010-12-02 Bessis Thierry C System & method for load spreading
EP2665234B1 (en) * 2011-06-15 2017-04-26 Huawei Technologies Co., Ltd. Method and device for scheduling service processing resource
CN104123189B (zh) * 2014-06-30 2017-12-01 复旦大学 一种基于IaaS层应用感知的Web多层应用动态资源调整方法
US9513935B2 (en) * 2014-10-28 2016-12-06 International Business Machines Corporation Auto-scaling thresholds in elastic computing environments
US9979656B2 (en) * 2015-12-07 2018-05-22 Oracle International Corporation Methods, systems, and computer readable media for implementing load balancer traffic policies
CN105939389A (zh) * 2016-06-29 2016-09-14 乐视控股(北京)有限公司 负载均衡方法及装置

Also Published As

Publication number Publication date
CN109150758A (zh) 2019-01-04

Similar Documents

Publication Publication Date Title
US10572284B2 (en) Virtualization Congestion Control Framework for Modifying Execution of Applications on Virtual Machine Based on Mass Congestion Indicator in Host Computing System
CN110996352B (zh) 一种流量控制方法、装置、计算机设备及存储介质
US9430259B2 (en) Virtualization congestion control framework for modifying execution of applications on virtual machine based on mass congestion indicator in host computing system
CN109669758A (zh) 服务器资源的调配方法、装置、设备及存储介质
KR101696698B1 (ko) 상호 의존 관계가 있는 컴포넌트 분배 및 관리 방법
CN104426694B (zh) 一种调整虚拟机资源的方法和装置
CN106648900B (zh) 基于智能电视的超算方法及系统
CN114448989B (zh) 调整消息分发的方法、装置、电子设备、存储介质及产品
US10216593B2 (en) Distributed processing system for use in application migration
US20180309686A1 (en) Reducing rate limits of rate limiters
US20180285169A1 (en) Information processing system and computer-implemented method
CN111045811A (zh) 一种任务分配方法、装置、电子设备及存储介质
EP3384388A1 (en) Technique for optimizing the scaling of an application having a set of virtual machines
CN102724104B (zh) 自动配置Java EE应用集群的装置和方法
CN109150758B (zh) 节点业务分配方法、装置、系统及计算机可读存储介质
US9836342B1 (en) Application alerting system and method for a computing infrastructure
CN109144666A (zh) 一种跨云平台的资源处理方法及系统
CN114116203B (zh) 一种资源调用控制方法、资源调用控制装置及存储介质
CN114257549B (zh) 一种流量的转发方法、装置、设备及存储介质
JP6186287B2 (ja) システムの管理サーバ及び制御方法
JP2014192856A (ja) 管理システム及び管理方法
JP6597324B2 (ja) オートスケール方法、オートスケールプログラム、情報処理装置及び情処理システム
JP6475118B2 (ja) 通信制御システム、通信制御装置及び通信制御方法
JP6206955B2 (ja) 無線基地局装置、制御管理装置、負荷分散方法およびコンピュータ・プログラム
CN118535327A (zh) 一种在离线混部中动态限制离线任务资源的方法及装置

Legal Events

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