CN111190728B - 资源调整方法及装置 - Google Patents

资源调整方法及装置 Download PDF

Info

Publication number
CN111190728B
CN111190728B CN201911286434.1A CN201911286434A CN111190728B CN 111190728 B CN111190728 B CN 111190728B CN 201911286434 A CN201911286434 A CN 201911286434A CN 111190728 B CN111190728 B CN 111190728B
Authority
CN
China
Prior art keywords
cpu resource
utilization rate
resource utilization
cpu
plane
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
CN201911286434.1A
Other languages
English (en)
Other versions
CN111190728A (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.)
Beijing Hillstone Networks Information Technology Co ltd
Original Assignee
Beijing Hillstone Networks Information Technology 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 Beijing Hillstone Networks Information Technology Co ltd filed Critical Beijing Hillstone Networks Information Technology Co ltd
Priority to CN201911286434.1A priority Critical patent/CN111190728B/zh
Publication of CN111190728A publication Critical patent/CN111190728A/zh
Application granted granted Critical
Publication of CN111190728B publication Critical patent/CN111190728B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本申请公开了一种资源调整方法及装置。其中,该方法包括:获取多个资源消耗平面对应的当前CPU资源利用率;计算多个资源消耗平面中每两个资源消耗平面对应的当前CPU资源利用率的差值;基于差值确定差值中绝对值最大的目标CPU资源利用率差值,与目标CPU资源利用率差值对应的第一平面与第二平面;若确定目标CPU资源利用率差值大于第一预设阈值,且第一CPU资源利用率与第二CPU资源利用率满足第一预设条件,则对第一CPU资源与第二CPU资源进行调整。本申请解决了有技术中,通过提前分配每个资源消耗平面对应的CPU资源处理不同的业务时,容易出现CPU资源利用不均,业务的处理效率较低的技术问题。

Description

资源调整方法及装置
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种资源调整方法及装置。
背景技术
现有技术中,在轮询模式下,采用多CPU/多核处理器的网络处理设备(防火墙,路由器)需要给控制平面、数据平面、应用平面分配计算资源。其中应用平面负责应用层数据处理;数据平面负责报文转发处理,为达到低延时、高性能的目的,通常数据平面独占部分CPU核。如何分配CPU计算资源是需要解决的一个问题。
目前,可采用按产品定义提前固定分配各个平面可用的CPU核,或者在存储介质中保存CPU核的分配信息,重启后读取生效。对于不同的业务场景,数据平面、控制平面以及应用平面需要的计算资源不同,使用提前固定分配各个平面可用的CPU核的方法容易出现CPU利用不均的情况,从而导致业务无法正常处理,业务处理效率较低。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种资源调整方法及装置,以至少解决有技术中,通过提前分配每个资源消耗平面对应的CPU资源处理不同的业务时,容易出现CPU资源利用不均,业务的处理效率较低的技术问题。
根据本申请实施例的一个方面,提供了一种资源调整方法,包括:获取多个资源消耗平面对应的当前CPU资源利用率,其中,多个资源消耗平面包括:数据平面、控制平面、应用平面;计算多个资源消耗平面中每两个资源消耗平面对应的当前CPU资源利用率的差值;基于差值确定差值中绝对值最大的目标CPU资源利用率差值,与目标CPU资源利用率差值对应的第一平面与第二平面,其中,第一平面的第一CPU资源利用率大于第二平面对应的第二CPU资源利用率;若确定目标CPU资源利用率差值大于第一预设阈值,且第一CPU资源利用率与第二CPU资源利用率满足第一预设条件,则对第一CPU资源与第二CPU资源进行调整。
可选地,确定第一CPU资源利用率与第二CPU资源利用率满足第一预设条件包括:如果第一CPU资源利用率高于第一预设下限阈值且第二CPU资源利用率低于第一预设上限阈值,则确定第一CPU资源利用率与第二CPU资源利用率满足第一预设条件。
可选地,对第一CPU资源与第二CPU资源进行调整包括:删除第二平面与目标CPU核资源的对应关系,并建立第一平面与目标CPU核资源的对应关系。
可选地,对第一CPU资源与第二CPU资源进行调整之前,该方法还包括:若确定第一CPU资源利用率与第二CPU资源利用率持续满足第一预设条件的时长大于第一时长,则启动对第一CPU资源与第二CPU资源进行调整的程序。
可选地,对第一CPU资源与第二CPU资源进行调整之前,该方法还包括:若确定当前时刻距离最近一次对CPU资源进行调整的调整时刻的时长大于第二时长,则启动对第一CPU资源与第二CPU资源进行调整的程序。
可选地,对第一CPU资源与第二CPU资源进行调整之前,该方法还包括:预估对第一CPU资源与第二CPU资源进行调整后的第三CPU资源利用率与第四CPU资源利用率,其中,第三CPU资源利用率为将第一CPU资源进行调整后的利用率,第四CPU资源利用率为将第二CPU资源进行调整后的利用率;若确定第三CPU资源利用率与第四CPU资源利用率不满足第二预设条件,则启动对第一CPU资源与第二CPU资源进行调整的程序;其中,第二预设条件包括:第四CPU资源利用率大于第三CPU资源利用率,且第四CPU资源利用率与第三CPU资源利用的差值大于第二预设阈值,且第四CPU资源利用率高于第二预设下限阈值,第三CPU资源利用率低于第二预设上限阈值。
可选地,获取多个资源消耗平面对应的当前CPU资源利用率包括:获取多个资源消耗平面中每个资源消耗平面对应的多个预设历史时间段;基于多个预设历史时间段确定每个预设历史时间段对应的预设权重与对应的子CPU资源利用率;根据每个预设历史时间段对应的预设权重与对应的子CPU资源利用率确定CPU资源利用率。
可选地,在数据平面,获取每个预设历史时间段对应的子CPU资源利用率包括:获取预设历史时间段内,每个统计周期中数据平面处理报文的时间;分别计算处理报文的时间与每个统计周期的比值,得到至少一个比值;将至少一个比值作为预设历史时间段对应的子CPU资源利用率。
根据本申请实施例的一个方面,提供了一种资源调整装置,包括:获取模块,用于获取多个资源消耗平面对应的当前CPU资源利用率,其中,多个资源消耗平面包括:数据平面、控制平面、应用平面;计算模块,用于计算多个资源消耗平面中每两个资源消耗平面对应的当前CPU资源利用率的差值;第一确定模块,用于基于差值确定差值中绝对值最大的目标CPU资源利用率差值,与目标CPU资源利用率差值对应的第一平面与第二平面,其中,第一平面的第一CPU资源利用率大于第二平面对应的第二CPU资源利用率;调整模块,用于若确定目标CPU资源利用率差值大于第一预设阈值,且第一CPU资源利用率与第二CPU资源利用率满足第一预设条件,则对第一CPU资源与第二CPU资源进行调整。
可选地,调整模块还包括第二确定模块,用于:如果第一CPU资源利用率高于第一预设下限阈值且第二CPU资源利用率低于第一预设上限阈值,则确定第一CPU资源利用率与第二CPU资源利用率满足第一预设条件。
可选地,调整模块还包括调整子模块,用于:删除第二平面与目标CPU核资源的对应关系,并建立第一平面与目标CPU核资源的对应关系。
根据本申请实施例的一个方面,提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述的资源调整方法。
根据本申请实施例的一个方面,提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述的资源调整方法。
在本申请实施例中,采用获取多个资源消耗平面对应的当前CPU资源利用率,其中,多个资源消耗平面包括:数据平面、控制平面、应用平面;计算多个资源消耗平面中每两个资源消耗平面对应的当前CPU资源利用率的差值;基于差值确定差值中绝对值最大的目标CPU资源利用率差值,与目标CPU资源利用率差值对应的第一平面与第二平面,其中,第一平面的第一CPU资源利用率大于第二平面对应的第二CPU资源利用率;若确定目标CPU资源利用率差值大于第一预设阈值,且第一CPU资源利用率与第二CPU资源利用率满足第一预设条件,则对第一CPU资源与第二CPU资源进行调整的方式,通过资源消耗平面间的差值,自动调整资源消耗对应的CPU资源利用率,达到了实时根据资源消耗平面的CPU资源利用率情况,自动调整、均衡CPU资源,提高业务的处理效率的技术效果,进而解决了有技术中,通过提前分配每个资源消耗平面对应的CPU资源处理不同的业务时,容易出现CPU资源利用不均,业务的处理效率较低的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种可选的资源调整方法的流程示意图;
图2是根据本申请实施例的一种可选的资源调整方法的流程示意图;
图3是根据本申请实施例的一种可选的资源调整装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本申请实施例,提供了一种资源调整方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本申请实施例的资源调整方法的流程示意图,如图1所示,该方法至少包括如下步骤:
步骤S102,获取多个资源消耗平面对应的当前CPU资源利用率,其中,多个资源消耗平面包括:数据平面、控制平面、应用平面。
其中,数据平面负责报文转发处理,应用平面负责应用层数据处理,控制平面负责对数据平面和应用平面进行控制。
需要说明的是,多CPU/多核处理设备的CPU资源采用分组的方式分配给各个资源消耗平面,在计算CPU资源利用率时,控制平面间隔Tm时间周期统计并记录各组的实时CPU利用率,具体地,每个时刻数据平面的CPU资源利用率可以按照以下方式计算:将Tm时间内处理报文的时间占总时间的比值作为CPU资源利用率;每个时刻应用平面的CPU资源利用率可以按照以下方式计算:将Tm时间内用户态、内核态以及临时增加时间占总时间的比值作为CPU资源利用率;而控制平面的CPU资源利用率可以采用与应用平面相同的计算方式来计算。
为了准确地获取当前CPU资源利用率,可选地,在本申请实施例提供的资源调整方法中,获取多个资源消耗平面对应的当前CPU资源利用率包括:获取多个资源消耗平面中每个资源消耗平面对应的多个预设历史时间段;基于多个预设历史时间段确定每个预设历史时间段对应的预设权重与对应的子CPU资源利用率;根据每个预设历史时间段对应的预设权重与对应的子CPU资源利用率确定CPU资源利用率。
需要说明的是,在每个时刻,资源消耗平面的实时CPU资源利用率存在变化,为了准确表征当前CPU资源利用率,可以先设定总预设历史时长,计算总预设历史时长内的多个预设历史时间段内的子CPU资源利用率,并为每个预设历史时间段设定权重,具体地,为了表征预设历史时间段对当前CPU资源利用率的影响,可以为据当前时段远的预设历史时段设定较小的权重,为据当前时段近的预设历史时段设定较大的权重,此外,还可以为每个预设历史时间段设定相同的权重。
可选地,在数据平面,获取每个预设历史时间段对应的子CPU资源利用率包括:获取预设历史时间段内,每个统计周期中数据平面处理报文的时间;分别计算处理报文的时间与每个统计周期的比值,得到至少一个比值;将至少一个比值作为预设历史时间段对应的子CPU资源利用率。
需要说明的是,数据平面用户处理报文,在内核态,存在程序空运行不处理报文的情况,将处理报文的时间与统计周期的比值作为CPU资源利用率,相比与统计内核态占据的时间和统计周期的比值作为CPU资源利用率,CPU资源利用率的计算更为准确。
步骤S104,计算多个资源消耗平面中每两个资源消耗平面对应的当前CPU资源利用率的差值。
需要说明的是,CPU资源利用率的差值表征各个资源消耗平面对应的CPU资源利用的均衡度,在CPU资源利用不均的情况下,可以对分配到各个平面的CPU资源进行调整。
步骤S106,基于差值确定差值中绝对值最大的目标CPU资源利用率差值,与目标CPU资源利用率差值对应的第一平面与第二平面,其中,第一平面的第一CPU资源利用率大于第二平面对应的第二CPU资源利用率。
需要说明的是,绝对值最大的目标CPU资源利用率差值对应的两个平面即为资源利用最不均的两个平面,可以在二者之间进行CPU资源分配的调整。
步骤S108,若确定目标CPU资源利用率差值大于第一预设阈值,且第一CPU资源利用率与第二CPU资源利用率满足第一预设条件,则对第一CPU资源与第二CPU资源进行调整。
需要说明的是,第一预设阈值可以用于表征两个平面之间的不均衡度达到临界值,在达到临界值,且满足其他调整CPU资源的条件的情况下,进行CPU资源利用率的调整。
例如,目标网络产品UDP等四层流量由数据平面处理,HTTP等七层流量由应用平面处理,在七层流量剧增时,应用平面计算资源不足,若数据平面计算资源大量闲置,说明存在资源利用不均衡,可以将计算资源在各平面中根据流量及时的自动迁移,提升设备处理能力。
具体地,在调整时,通过调核的方式调整CPU利用率时,可以先通知待减少CPU核的平面,在收到确认可以减少该平面对应的核的情况下,再通知待增加CPU核的平面,从而调整二者之间的CPU利用率,其中,减少CPU核的平面对应的CPU利用率增加,增加CPU核的平面对应的CPU利用率减少。
需要说明的是,可以有多种调整方式调整CPU利用率,例如,可以让操作系统不把程序调度到未指定核;再例如,可以设置标识,CPU核程序进入休眠状态,减少CPU占用;还可以在资源不可用时,不唤醒程序。
为了在调整CPU资源分配的情况下,不影响各个平面对应的程序的运行,可选地,在本申请实施例提供的资源调整方法中,确定第一CPU资源利用率与第二CPU资源利用率满足第一预设条件包括:如果第一CPU资源利用率高于第一预设下限阈值且第二CPU资源利用率低于第一预设上限阈值,则确定第一CPU资源利用率与第二CPU资源利用率满足第一预设条件。
需要说明的是,当第一平面需要增加核,第二平面需要减少核,也即第一CPU资源利用率需要降低,第二CPU资源利用率需要提高的情况下,若第一CPU资源利用率低于第一预设下限阈值的,说明该平面CPU不忙,无需增加计算资源,也即无需增加核,第二CPU资源利用率高于第一预设上限阈值时,说明再减少核则会导致其CPU利用率更高,影响程序的运行。
可选地,在本申请实施例提供的资源调整方法中,对第一CPU资源与第二CPU资源进行调整包括:删除第二平面与目标CPU核资源的对应关系,并建立第一平面与目标CPU核资源的对应关系。
例如,当第一平面需要增加CPU核资源,第二平面需要减少CPU核资源时,可以解除目标CPU核资源和第二平面的对应关系,也即,原本第二平面占用的核资源,并建立目标CPU核资源和第一平面之间的对应关系,以实现CPU资源利用率的调整。
为了避免不必要的资源利用率的调整,可选地,在本申请实施例提供的资源调整方法中,对第一CPU资源与第二CPU资源进行调整之前,该方法还包括:若确定第一CPU资源利用率与第二CPU资源利用率持续满足第一预设条件的时长大于第一时长,则启动对第一CPU资源与第二CPU资源进行调整的程序。
需要说明的是,为了避免偶然突发的CPU资源利用率的大幅度变动导致的资源利用率的调整,在满足第一预设条件的时长大于第一时长后再触发调整程序。
为了控制调整频率,可选地,在本申请实施例提供的资源调整方法中,对第一CPU资源与第二CPU资源进行调整之前,该方法还包括:若确定当前时刻距离最近一次对CPU资源进行调整的调整时刻的时长大于第二时长,则启动对第一CPU资源与第二CPU资源进行调整的程序。
也即,第二时长为相邻两次调整最小间隔时间,控制CPU资源利用率进行调整的调整时刻的时长大于第二时长,从而避免频繁调整。
可选地,在本申请实施例提供的资源调整方法中,对第一CPU资源与第二CPU资源进行调整之前,该方法还包括:预估对第一CPU资源与第二CPU资源进行调整后的第三CPU资源利用率与第四CPU资源利用率,其中,第三CPU资源利用率为将第一CPU资源进行调整后的利用率,第四CPU资源利用率为将第二CPU资源进行调整后的利用率;若确定第三CPU资源利用率与第四CPU资源利用率不满足第二预设条件,则启动对第一CPU资源与第二CPU资源进行调整的程序;其中,第二预设条件包括:第四CPU资源利用率大于第三CPU资源利用率,且第四CPU资源利用率与第三CPU资源利用的差值大于第二预设阈值,且第四CPU资源利用率高于第二预设下限阈值,第三CPU资源利用率低于第二预设上限阈值。
需要说明的是,在调整各个平面对应的CPU资源之前,为了防止调整后立刻回调,出现震荡的情况,在调整之前先预估按当前调整策略调整之后各个平面的CPU利用情况。
例如,为第一平面分配了4个CPU核,为第二个平面分配了3个CPU核,若第一平面对应的CPU利用率为90%,第二平面对应的CPU核的利用率为60%,第一预设值为20%,第一预设上限为85%,第一预设下限为65%,则需要对二者之间的CPU资源利用率进行调整。若第二预设值为20%,第二预设上限为85%,第二预设下限为65%,,若将第二平面中的一个CPU核调整至第一平面,则第二平面对应的CPU为2个,CPU资源利用率变成90%,大于85%,因而,不能将第二平面对应的CPU核调整至第一平面。
在本申请实施例中,采用获取多个资源消耗平面对应的当前CPU资源利用率,其中,多个资源消耗平面包括:数据平面、控制平面、应用平面;计算多个资源消耗平面中每两个资源消耗平面对应的当前CPU资源利用率的差值;基于差值确定差值中绝对值最大的目标CPU资源利用率差值,与目标CPU资源利用率差值对应的第一平面与第二平面,其中,第一平面的第一CPU资源利用率大于第二平面对应的第二CPU资源利用率;若确定目标CPU资源利用率差值大于第一预设阈值,且第一CPU资源利用率与第二CPU资源利用率满足第一预设条件,则对第一CPU资源与第二CPU资源进行调整的方式,通过资源消耗平面间的差值,自动调整资源消耗对应的CPU资源利用率,达到了实时根据资源消耗平面的CPU资源利用率情况,自动调整、均衡CPU资源,提高业务的处理效率的技术效果,进而解决了有技术中,通过提前分配每个资源消耗平面对应的CPU资源处理不同的业务时,容易出现CPU资源利用不均,业务的处理效率较低的技术问题。
图2是根据本申请实施例的资源调整方法的流程示意图,如图2所示,该方法至少包括如下步骤:
步骤S202,开始检测。
步骤S204,判断目标CPU资源利用率差值是否大于第一预设阈值。
需要说明的是,CPU资源利用率的差值表征各个资源消耗平面对应的CPU资源利用的均衡度,在目标CPU资源利用率差值大于第一预设阈值的情况下,说明CPU资源利用不均,可以对分配到各个平面的CPU资源进行调整。
步骤S206,在是的情况下,判断第一CPU资源利用率是否高于第一预设下限阈值。
需要说明的是,第一CPU资源利用率为较高的CPU资源利用率,当第一CPU资源利用率低于第一预设下限阈值的情况下,说明该平面CPU不忙,无需增加计算资源,在第一CPU资源利用率高于第一预设下限阈值的情况下,说明需要增加计算资源从而降低资源利用率。
步骤S208,在是的情况下,判断第二CPU资源利用率是否低于第一预设上限阈值。
需要说明的是,第二CPU资源利用率为较低的CPU资源利用率,当第二CPU资源利用率高于第一预设上限阈值,说明减少CPU核会导致资源利用率过高,当第二CPU资源利用率低于第一预设上限阈值,说明可以进一步增加资源利用率。
步骤S210,在是的情况下,判断调整后是否需要立即回调。
需要说明的是,在调整各个平面对应的CPU资源之前,为了防止调整后立刻回调,出现震荡的情况,在调整之前先预估按当前调整策略调整之后各个平面的CPU利用情况。
步骤S212,在否的情况下,判断第一CPU资源利用率与第二CPU资源利用率是否持续满足第一预设条件的时长大于第一时长。
需要说明的是,为了避免偶然突发的CPU资源利用率的大幅度变动导致的资源利用率的调整,在满足第一预设条件的时长大于第一时长后再触发调整程序。
步骤S214,在是的情况下,判断当前时刻距离最近一次对CPU资源进行调整的调整时刻的时长大于第二时长;
需要说明的是,第二时长为相邻两次调整最小间隔时间,控制CPU资源进行调整的调整时刻的时长大于第二时长,从而避免频繁调整。
步骤S216,在是的情况下,调整;
也即,在上述条件均满足情况下,触发调整CPU利用资源的操作。
步骤S218,在上述任意一个条件不满足的情况下,不调整。
需要说明的是,图2所示实施例的优选实施方式可以参见图1所示实施例的相关描述,此处不再赘述。
根据本申请实施例,还提供了一种用于实施上述资源调整方法的资源调整装置,如图3所示,该装置包括:获取模块32、计算模块34、第一确定模块36、调整模块38;其中:
获取模块32,用于获取多个资源消耗平面对应的当前CPU资源利用率,其中,多个资源消耗平面包括:数据平面、控制平面、应用平面;
计算模块34,用于计算多个资源消耗平面中每两个资源消耗平面对应的当前CPU资源利用率的差值;
第一确定模块36,用于基于差值确定差值中绝对值最大的目标CPU资源利用率差值,与目标CPU资源利用率差值对应的第一平面与第二平面,其中,第一平面的第一CPU资源利用率大于第二平面对应的第二CPU资源利用率;
调整模块38,用于若确定目标CPU资源利用率差值大于第一预设阈值,且第一CPU资源利用率与第二CPU资源利用率满足第一预设条件,则对第一CPU资源与第二CPU资源进行调整。
可选地,调整模块还包括第二确定模块,用于:如果第一CPU资源利用率高于第一预设下限阈值且第二CPU资源利用率低于第一预设上限阈值,则确定第一CPU资源利用率与第二CPU资源利用率满足第一预设条件。
可选地,在本申请实施例提供的资源调整装置中,调整模块还包括调整子模块,用于:删除第二平面与目标CPU核资源的对应关系,并建立第一平面与目标CPU核资源的对应关系。
可选地,在本申请实施例提供的资源调整装置中,该装置还包括第一启动模块,用于:若确定第一CPU资源利用率与第二CPU资源利用率持续满足第一预设条件的时长大于第一时长,则启动对第一CPU资源与第二CPU资源进行调整的程序。
可选地,在本申请实施例提供的资源调整装置中,该装置还包括第二启动模块,用于:若确定当前时刻距离最近一次对CPU资源进行调整的调整时刻的时长大于第二时长,则启动对第一CPU资源与第二CPU资源进行调整的程序。
可选地,在本申请实施例提供的资源调整装置中,该装置还包括第三启动模块,用于:预估对第一CPU资源与第二CPU资源进行调整后的第三CPU资源利用率与第四CPU资源利用率,其中,第三CPU资源利用率为将第一CPU资源进行调整后的利用率,第四CPU资源利用率为将第二CPU资源进行调整后的利用率;若确定第三CPU资源利用率与第四CPU资源利用率不满足第二预设条件,则启动对第一CPU资源与第二CPU资源进行调整的程序;其中,第二预设条件包括:第四CPU资源利用率大于第三CPU资源利用率,且第四CPU资源利用率与第三CPU资源利用的差值大于第二预设阈值,且第四CPU资源利用率高于第二预设下限阈值,第三CPU资源利用率低于第二预设上限阈值。
可选地,在本申请实施例提供的资源调整装置中,获取模块包括获取子模块,用于:获取多个资源消耗平面中每个资源消耗平面对应的多个预设历史时间段;基于多个预设历史时间段确定每个预设历史时间段对应的预设权重与对应的子CPU资源利用率;根据每个预设历史时间段对应的预设权重与对应的子CPU资源利用率确定CPU资源利用率。
可选地,在本申请实施例提供的资源调整装置中,获取子模块包括:获取子单元,用于获取预设历史时间段内,每个统计周期中数据平面处理报文的时间;计算子单元,用于分别计算处理报文的时间与每个统计周期的比值,得到至少一个比值;确定子单元,用于将至少一个比值作为预设历史时间段对应的子CPU资源利用率。
需要说明的是,图3所示实施例的优选实施方式可以参见图1所示实施例的相关描述,此处不再赘述。
根据本申请实施例的另一个方面,还提供了一种存储介质,存储介质包括存储的程序,可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
获取多个资源消耗平面对应的当前CPU资源利用率,其中,多个资源消耗平面包括:数据平面、控制平面、应用平面;计算多个资源消耗平面中每两个资源消耗平面对应的当前CPU资源利用率的差值;基于差值确定差值中绝对值最大的目标CPU资源利用率差值,与目标CPU资源利用率差值对应的第一平面与第二平面,其中,第一平面的第一CPU资源利用率大于第二平面对应的第二CPU资源利用率;若确定目标CPU资源利用率差值大于第一预设阈值,且第一CPU资源利用率与第二CPU资源利用率满足第一预设条件,则对第一CPU资源与第二CPU资源进行调整。
根据本申请实施例的另一个方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时可以执行应用程序的资源调整方法中以下步骤的程序代码:
获取多个资源消耗平面对应的当前CPU资源利用率,其中,多个资源消耗平面包括:数据平面、控制平面、应用平面;计算多个资源消耗平面中每两个资源消耗平面对应的当前CPU资源利用率的差值;基于差值确定差值中绝对值最大的目标CPU资源利用率差值,与目标CPU资源利用率差值对应的第一平面与第二平面,其中,第一平面的第一CPU资源利用率大于第二平面对应的第二CPU资源利用率;若确定目标CPU资源利用率差值大于第一预设阈值,且第一CPU资源利用率与第二CPU资源利用率满足第一预设条件,则对第一CPU资源与第二CPU资源进行调整。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (12)

1.一种资源调整方法,其特征在于,包括:
获取多个资源消耗平面对应的当前CPU资源利用率,其中,所述多个资源消耗平面包括:数据平面、控制平面、应用平面;
计算所述多个资源消耗平面中每两个资源消耗平面对应的当前CPU资源利用率的差值;
基于所述差值确定所述差值中绝对值最大的目标CPU资源利用率差值,与所述目标CPU资源利用率差值对应的第一平面与第二平面,其中,所述第一平面的第一CPU资源利用率大于所述第二平面对应的第二CPU资源利用率;
若确定所述目标CPU资源利用率差值大于第一预设阈值,且所述第一CPU资源利用率与所述第二CPU资源利用率满足第一预设条件,则对所述第一CPU资源与所述第二CPU资源进行调整;
获取多个资源消耗平面对应的当前CPU资源利用率包括:获取所述多个资源消耗平面中每个资源消耗平面对应的多个预设历史时间段;基于所述多个预设历史时间段确定每个所述预设历史时间段对应的预设权重与对应的子CPU资源利用率;根据每个所述预设历史时间段对应的预设权重与对应的子CPU资源利用率确定所述CPU资源利用率,其中,为据当前时段远的预设历史时段设定小权重,为据当前时段近的预设历史时段设定大权重;
其中,间隔Tm时间周期统计并记录不同资源消耗平面的实时CPU利用率,所述数据平面的CPU资源利用率按照以下方式计算:将所述Tm时间内处理报文的时间占总时间的比值作为CPU资源利用率;所述应用平面的CPU资源利用率按照以下方式计算:将所述Tm时间内用户态、内核态以及临时增加时间占总时间的比值作为CPU资源利用率;所述控制平面的CPU资源利用率按照以下方式计算:将所述Tm时间内用户态、内核态以及临时增加时间占总时间的比值作为CPU资源利用率。
2.根据权利要求1所述的方法,其特征在于,确定所述第一CPU资源利用率与所述第二CPU资源利用率满足第一预设条件包括:
如果所述第一CPU资源利用率高于第一预设下限阈值且所述第二CPU资源利用率低于第一预设上限阈值,则确定所述第一CPU资源利用率与所述第二CPU资源利用率满足所述第一预设条件。
3.根据权利要求2所述的方法,其特征在于,对所述第一CPU资源与所述第二CPU资源进行调整包括:删除所述第二平面与目标CPU核资源的对应关系,并建立所述第一平面与所述目标CPU核资源的对应关系。
4.根据权利要求3所述的方法,其特征在于,对所述第一CPU资源与所述第二CPU资源进行调整之前,所述方法还包括:
若确定所述第一CPU资源利用率与所述第二CPU资源利用率持续满足所述第一预设条件的时长大于第一时长,则启动对所述第一CPU资源与所述第二CPU资源进行调整的程序。
5.根据权利要求4所述的方法,其特征在于,对所述第一CPU资源与所述第二CPU资源进行调整之前,所述方法还包括:若确定当前时刻距离最近一次对CPU资源进行调整的调整时刻的时长大于第二时长,则启动对所述第一CPU资源与所述第二CPU资源进行调整的程序。
6.根据权利要求1所述的方法,其特征在于,对所述第一CPU资源与所述第二CPU资源进行调整之前,所述方法还包括:
预估对所述第一CPU资源与所述第二CPU资源进行调整后的第三CPU资源利用率与第四CPU资源利用率,其中,所述第三CPU资源利用率为将所述第一CPU资源进行调整后的利用率,所述第四CPU资源利用率为将所述第二CPU资源进行调整后的利用率;
若确定所述第三CPU资源利用率与所述第四CPU资源利用率不满足第二预设条件,则启动对所述第一CPU资源与所述第二CPU资源进行调整的程序;
其中,所述第二预设条件包括:所述第四CPU资源利用率大于所述第三CPU资源利用率,且所述第四CPU资源利用率与所述第三CPU资源利用的差值大于第二预设阈值,且所述第四CPU资源利用率高于第二预设下限阈值,所述第三CPU资源利用率低于第二预设上限阈值。
7.根据权利要求1所述的方法,其特征在于,在所述数据平面,获取每个所述预设历史时间段对应的子CPU资源利用率包括:
获取所述预设历史时间段内,每个统计周期中所述数据平面处理报文的时间;
分别计算处理报文的时间与每个所述统计周期的比值,得到至少一个比值;
将所述至少一个比值作为所述预设历史时间段对应的子CPU资源利用率。
8.一种资源调整装置,其特征在于,包括:
获取模块,用于获取多个资源消耗平面对应的当前CPU资源利用率,其中,所述多个资源消耗平面包括:数据平面、控制平面、应用平面;
计算模块,用于计算所述多个资源消耗平面中每两个资源消耗平面对应的当前CPU资源利用率的差值;
第一确定模块,用于基于所述差值确定所述差值中绝对值最大的目标CPU资源利用率差值,与所述目标CPU资源利用率差值对应的第一平面与第二平面,其中,所述第一平面的第一CPU资源利用率大于所述第二平面对应的第二CPU资源利用率;
调整模块,用于若确定所述目标CPU资源利用率差值大于第一预设阈值,且所述第一CPU资源利用率与所述第二CPU资源利用率满足第一预设条件,则对所述第一CPU资源与所述第二CPU资源进行调整;
获取模块包括获取子模块,用于:获取所述多个资源消耗平面中每个资源消耗平面对应的多个预设历史时间段;基于所述多个预设历史时间段确定每个所述预设历史时间段对应的预设权重与对应的子CPU资源利用率;根据每个所述预设历史时间段对应的预设权重与对应的子CPU资源利用率确定所述CPU资源利用率,其中,为据当前时段远的预设历史时段设定小权重,为据当前时段近的预设历史时段设定大权重;
其中,间隔Tm时间周期统计并记录不同资源消耗平面的实时CPU利用率,所述数据平面的CPU资源利用率按照以下方式计算:将所述Tm时间内处理报文的时间占总时间的比值作为CPU资源利用率;所述应用平面的CPU资源利用率按照以下方式计算:将所述Tm时间内用户态、内核态以及临时增加时间占总时间的比值作为CPU资源利用率;所述控制平面的CPU资源利用率按照以下方式计算:将所述Tm时间内用户态、内核态以及临时增加时间占总时间的比值作为CPU资源利用率。
9.根据权利要求8所述的装置,其特征在于,所述调整模块还包括第二确定模块,用于:
如果所述第一CPU资源利用率高于第一预设下限阈值且所述第二CPU资源利用率低于第一预设上限阈值,则确定所述第一CPU资源利用率与所述第二CPU资源利用率满足所述第一预设条件。
10.根据权利要求9所述的装置,其特征在于,所述调整模块还包括调整子模块,用于:删除所述第二平面与目标CPU核资源的对应关系,并建立所述第一平面与所述目标CPU核资源的对应关系。
11.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至7中任意一项所述的资源调整方法。
12.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至7中任意一项所述的资源调整方法。
CN201911286434.1A 2019-12-13 2019-12-13 资源调整方法及装置 Active CN111190728B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911286434.1A CN111190728B (zh) 2019-12-13 2019-12-13 资源调整方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911286434.1A CN111190728B (zh) 2019-12-13 2019-12-13 资源调整方法及装置

Publications (2)

Publication Number Publication Date
CN111190728A CN111190728A (zh) 2020-05-22
CN111190728B true CN111190728B (zh) 2023-08-25

Family

ID=70705817

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911286434.1A Active CN111190728B (zh) 2019-12-13 2019-12-13 资源调整方法及装置

Country Status (1)

Country Link
CN (1) CN111190728B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112423004B (zh) * 2020-11-05 2024-02-06 深圳Tcl新技术有限公司 视频数据传输方法、装置、发送端以及存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101504620A (zh) * 2009-03-03 2009-08-12 华为技术有限公司 一种虚拟化集群系统负载平衡方法、装置及系统
CN103703830A (zh) * 2013-05-31 2014-04-02 华为技术有限公司 一种物理资源调整方法、装置及控制器
CN104239153A (zh) * 2014-09-29 2014-12-24 三星电子(中国)研发中心 多核cpu负载均衡的方法和装置
CN105045369A (zh) * 2015-06-19 2015-11-11 北京大学深圳研究生院 一种基于用户交互历史信息的cpu动态调频方法
CN105511964A (zh) * 2015-11-30 2016-04-20 华为技术有限公司 I/o请求的处理方法和装置
CN106201441A (zh) * 2016-07-08 2016-12-07 汉柏科技有限公司 一种网络设备中cpu利用率的获取方法及装置
CN106851667A (zh) * 2017-01-19 2017-06-13 京信通信系统(广州)有限公司 一种针对空口协议数据面的数据处理方法及装置
US9794331B1 (en) * 2014-09-29 2017-10-17 Amazon Technologies, Inc. Block allocation based on server utilization
JP2018037047A (ja) * 2016-09-02 2018-03-08 日本電信電話株式会社 リソース割当装置、リソース割当方法およびリソース割当プログラム
CN108512727A (zh) * 2018-04-02 2018-09-07 北京天融信网络安全技术有限公司 一种中央处理器利用率的确定方法及装置
CN108845874A (zh) * 2018-06-25 2018-11-20 腾讯科技(深圳)有限公司 资源的动态分配方法及服务器
CN108874535A (zh) * 2018-05-14 2018-11-23 中国平安人寿保险股份有限公司 一种任务调节方法、计算机可读存储介质及终端设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140080058A (ko) * 2012-12-20 2014-06-30 삼성전자주식회사 멀티코어를 위한 로드 밸런싱 방법 및 휴대 단말

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101504620A (zh) * 2009-03-03 2009-08-12 华为技术有限公司 一种虚拟化集群系统负载平衡方法、装置及系统
CN103703830A (zh) * 2013-05-31 2014-04-02 华为技术有限公司 一种物理资源调整方法、装置及控制器
CN104239153A (zh) * 2014-09-29 2014-12-24 三星电子(中国)研发中心 多核cpu负载均衡的方法和装置
US9794331B1 (en) * 2014-09-29 2017-10-17 Amazon Technologies, Inc. Block allocation based on server utilization
CN105045369A (zh) * 2015-06-19 2015-11-11 北京大学深圳研究生院 一种基于用户交互历史信息的cpu动态调频方法
CN105511964A (zh) * 2015-11-30 2016-04-20 华为技术有限公司 I/o请求的处理方法和装置
CN106201441A (zh) * 2016-07-08 2016-12-07 汉柏科技有限公司 一种网络设备中cpu利用率的获取方法及装置
JP2018037047A (ja) * 2016-09-02 2018-03-08 日本電信電話株式会社 リソース割当装置、リソース割当方法およびリソース割当プログラム
CN106851667A (zh) * 2017-01-19 2017-06-13 京信通信系统(广州)有限公司 一种针对空口协议数据面的数据处理方法及装置
CN108512727A (zh) * 2018-04-02 2018-09-07 北京天融信网络安全技术有限公司 一种中央处理器利用率的确定方法及装置
CN108874535A (zh) * 2018-05-14 2018-11-23 中国平安人寿保险股份有限公司 一种任务调节方法、计算机可读存储介质及终端设备
CN108845874A (zh) * 2018-06-25 2018-11-20 腾讯科技(深圳)有限公司 资源的动态分配方法及服务器

Also Published As

Publication number Publication date
CN111190728A (zh) 2020-05-22

Similar Documents

Publication Publication Date Title
KR101540631B1 (ko) 가상 클러스터의 동적 확장 시스템, 방법 및 그 프로그램이 저장된 기록매체
EP3335120B1 (en) Method and system for resource scheduling
EP2725862A1 (en) Resource allocation method and resource management platform
CN110597858A (zh) 任务数据处理方法、装置、计算机设备和存储介质
CN107302580B (zh) 负载均衡方法、装置、负载均衡器及存储介质
CN112689007B (zh) 资源分配方法、装置、计算机设备和存储介质
JP2006511137A5 (zh)
CN101778105B (zh) 获取基于web的实时性能监视指标数的方法、系统及设备
CN106464733A (zh) 一种调整云计算中虚拟资源的方法及装置
CN109039953B (zh) 带宽调度方法及装置
CN110647392A (zh) 一种基于容器集群的智能弹性伸缩方法
CN111045808A (zh) 一种分布式网络任务调度方法及装置
CN111708629B (zh) 一种资源分配方法、装置、电子设备和存储介质
CN111190728B (zh) 资源调整方法及装置
CN106936867B (zh) 一种业务请求的响应方法及装置
CN115334082A (zh) 负载均衡方法、装置、计算机设备、存储介质和产品
CN102137091B (zh) 一种过负荷控制方法、装置、系统及客户端
CN106933673B (zh) 调整组件逻辑线程数量的方法及装置
CN109167761A (zh) 一种请求自动处理的方法及装置
CN112286623B (zh) 一种信息处理方法及装置、存储介质
CN112437015A (zh) 分流调度方法、装置、系统和计算机可读存储介质
CN113079062B (zh) 一种资源调整方法、装置、计算机设备和存储介质
WO2017162075A1 (zh) 任务调度方法和装置
CN114048033A (zh) 跑批任务的负载均衡方法、装置及计算机设备
CN110868304B (zh) 一种pcc策略下发方法及系统

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