CN109408225A - 资源扩容方法、装置、计算机设备以及存储介质 - Google Patents
资源扩容方法、装置、计算机设备以及存储介质 Download PDFInfo
- Publication number
- CN109408225A CN109408225A CN201811088228.5A CN201811088228A CN109408225A CN 109408225 A CN109408225 A CN 109408225A CN 201811088228 A CN201811088228 A CN 201811088228A CN 109408225 A CN109408225 A CN 109408225A
- Authority
- CN
- China
- Prior art keywords
- consumption rate
- resource consumption
- resource
- capacity expansion
- default
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 25
- 230000015654 memory Effects 0.000 claims description 58
- 230000006870 function Effects 0.000 claims description 38
- 238000004364 calculation method Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 13
- 239000012141 concentrate Substances 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 10
- 239000000203 mixture Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例公开了一种资源扩容方法、装置、计算机设备以及存储介质,其中,所述方法包括:获取目标系统中内部硬件设备的资源消耗率;从内部硬件设备中选择第一目标设备集,第一目标设备集携带有目标标识,目标标识用于标识目标系统需要资源扩容;从第一目标设备集合中选择第二目标设备,第二目标设备的资源消耗率大于预设资源消耗率的上限值;根据预设算法对第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果;确定计算结果是否符合目标系统的资源扩容条件;若计算结果符合目标系统的资源扩容条件时,增加第二目标设备以实现资源扩容。本实施例可以实现硬件资源的扩容,提高硬件资源扩容的准确性和资源合理利用率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种资源扩容方法、装置、计算机设备以及存储介质。
背景技术
现有技术中,对于硬件机器资源并没有一个完整、合理的扩容方式,如果当硬件机器资源使用率达到预警程度时,再通过手工增加硬件机器以达到扩容目的的方式,无法做到提前扩容,并且因为是临时扩容,通常会花费大量的人力和物力,随着技术的不断革新,业务量的不断增长,手工对硬件机器资源进行扩容的方式已经不能满足当下的业务需求与发展。
发明内容
有鉴于此,本发明实施例提供一种资源扩容方法、装置、计算机设备以及存储介质,可以实现对硬件资源的扩容,提高了硬件资源扩容的准确性,以及资源合理利用率。
一方面,本发明实施例提供了一种资源扩容方法,该方法包括:
获取目标系统中内部硬件设备的资源消耗率;
从所述内部硬件设备中选择第一目标设备集,所述第一目标设备集携带有目标标识,所述目标标识用于标识所述目标系统需要资源扩容;
从所述第一目标设备集中选择第二目标设备,所述第二目标设备的资源消耗率大于预设资源消耗率的上限值;
根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果;
确定所述计算结果是否符合所述目标系统的资源扩容条件;
若计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标设备以实现所述目标系统的资源扩容。
另一方面,本发明实施例提供了一种资源扩容装置,所述装置包括:
获取单元,用于获取目标系统中内部硬件设备的资源消耗率;
第一选择单元,用于从所述内部硬件设备中选择第一目标设备集,所述第一目标设备集携带有目标标识,所述目标标识用于标识所述目标系统需要资源扩容;
第二选择单元,用于从所述第一目标设备集中选择第二目标设备,所述第二目标设备的资源消耗率大于预设资源消耗率的上限值;
计算单元,用于根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果;
第一确定单元,用于确定所述计算结果是否符合所述目标系统的资源扩容条件;
执行单元,用于若计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标设备以实现所述目标系统的资源扩容。
又一方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的资源扩容方法。
再一方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序可被一个或者一个以上的处理器执行,以实现如上所述的资源扩容方法。
本发明实施例提供一种资源扩容方法、装置、计算机设备以及存储介质,其中方法包括:获取目标系统中内部硬件设备的资源消耗率;从所述内部硬件设备中选择第一目标设备集,所述第一目标设备集携带有目标标识,所述目标标识用于标识所述目标系统需要资源扩容;从所述第一目标设备集合中选择第二目标设备,所述第二目标设备的资源消耗率大于预设资源消耗率的上限值;根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果;确定所述计算结果是否符合所述目标系统的资源扩容条件;若计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标设备以实现所述目标系统的资源扩容。本实施例可以实现硬件资源的扩容,提高硬件资源扩容的准确性和资源合理利用率。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种资源扩容方法的示意流程图;
图2是本发明实施例提供的一种资源扩容装置的示意性框图;
图3是本发明实施例提供的一种资源扩容装置的另一示意性框图;
图4是本发明实施例提供的一种资源扩容装置的另一示意性框图;
图5是本发明实施例提供的一种资源扩容装置的另一示意性框图;
图6是本发明实施例提供的一种计算机设备的结构组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
请参阅图1,图1为本发明实施例提供的一种资源扩容方法的示意流程图。如图1所示,该方法包括步骤S101~S106。
S101,获取目标系统中内部硬件设备的资源消耗率。
在本发明实施例中,所述目标系统可以是由多台计算机设备组成的计算机集群,所述目标系统还可以是由多台服务器组成的服务器集群。所述内部硬件设备是构成目标系统的重要物理装置,所述内部硬件设备可以包括CPU、内存和磁盘等等。若所述内部硬件设备为CPU,则所述资源消耗率指的是CPU使用率;若所述内部硬件设备为内存,则所述资源消耗率指的是内存使用率;若所述内部硬件设备为磁盘,则所述资源消耗率指的是磁盘使用率。
具体的,所述内部硬件设备包括CPU、内存或者磁盘;若所述内部硬件设备为CPU,所述资源消耗率为CPU使用率,所述获取目标系统中内部硬件设备的资源消耗率,包括以下步骤:通过预设第一时间函数获取所述CPU在运行时的不同工作时间,并根据所获取的工作时间利用预设第一计算公式得到所述CPU使用率;若所述内部硬件设备为内存,所述资源消耗率为内存使用率,所述获取目标系统中内存硬件设备的资源消耗率,包括以下步骤:通过预设第二时间函数获取所述内存在运行时的不同工作时间,并根据所获取的工作时间利用预设第二计算公式得到所述内存使用率;若所述内部硬件设备为磁盘,所述资源消耗率为磁盘使用率,所述获取目标系统中内存硬件设备的资源消耗率,包括以下步骤:通过预设第三时间函数获取所述磁盘在运行时的不同工作时间,并根据所获取的工作时间利用预设第三计算公式得到所述磁盘使用率。例如,对于统计CPU使用率,即计算在预设时间内CPU忙碌的时间占比,通过预设第一时间函数GetSystemTime()可以得到当前CPU的运行时间,以及在该运行时间段内CPU三种不同的工作时间(自开机以来):空闲时间、内核时间和用户时间,根据CPU的三种不同的工作时间以及预设第一计算公式:CPU使用率=(内核时间+用户时间-空闲时间)/(内核时间+用户时间),可计算得出CPU在当前运行时间段内的CPU使用率;对于统计内存使用率,即计算在预设时间内内存忙碌的时间占比,通过预设第二时间函数GetSystemTime()可以得到当前内存的运行时间,以及在该运行时间段内内存三种不同的工作时间(自开机以来):空闲时间、主控电路时间和用户时间,根据内存的三种不同的工作时间以及预设第二计算公式:内存使用率=(主控电路时间+用户时间-空闲时间)/(主控电路时间+用户时间),可计算得出内存在当前运行时间段内的内存使用率;对于统计磁盘使用率,即计算在预设时间内磁盘忙碌的时间占比,通过预设第三时间函数GetSystemTime()可以得到当前磁盘的运行时间,以及在该运行时间段内磁盘三种不同的工作时间(自开机以来):空闲时间、主控电路时间和用户时间,根据磁盘的三种不同的工作时间以及预设第三计算公式:磁盘使用率=(主控电路时间+用户时间-空闲时间)/(主控电路时间+用户时间),可计算得出磁盘在当前运行时间段内的磁盘使用率。
S102,从所述内部硬件设备中选择第一目标设备集,所述第一目标设备集携带有目标标识,所述目标标识用于标识所述目标系统需要资源扩容。
在本发明实施例中,可以由所述目标系统的特性决定所选择的第一目标设备集,例如,目标系统在大部分时间内开销都花在CPU的运算上,那么该系统需要使用的CPU资源比其它资源(例如内存资源、磁盘资源等等)相对多很多,因此,根据目标系统的这一特性,选择CPU作为判断所述目标系统是否需要进行资源扩容的第一目标设备;由于所述目标是由多台计算机设备组成的计算机集群,例如服务器集群,因此,每个目标系统对应多个第一目标设备,多个第一目标设备组成第一目标设备集,比如,每个服务器集群对应有多个CPU、多个内存或者多个磁盘。
S103,从所述第一目标设备集中选择第二目标设备,所述第二目标设备的资源消耗率大于预设资源消耗率的上限值。
在本发明实施例中,所述预设资源消耗率上限值为所述第一目标设备集的资源消耗率的正常值,所述从所述第一目标设备集中选择第二目标设备,包括以下步骤:确定所述第一目标设备集中的资源消耗率是否超过所规定的正常值上限;若所述第一目标设备集中的资源消耗率超过所规定的正常值上限,从所述第一目标设备集中选择所述资源消耗率超过所规定的正常值上限的内部硬件设备作为第二目标设备。
具体的,所述预设资源消耗率上限值可以由用户自行设置,在此不作限定,例如,若所述第一目标设备为CPU,且在服务器集群中有3个CPU(分别为CPU1、CPU2、CPU3),定义CPU的预设资源消耗率上限值为70%,根据统计3个CPU的使用率得到CPU1使用率为81%,CPU2使用率为75%,CPU3使用率为90%,将所统计的CPU使用率与预设资源消耗率上限值进行比较(CPU1使用率>预设资源消耗率上限值、CPU2使用率>预设资源消耗率上限值、CPU3使用率>预设资源消耗率上限值),所统计的CPU使用率均大于预设资源消耗率上限值,将服务器集群中的3个CPU作为第二目标设备。
S104,根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果。
在本发明实施例中,所述预设算法为NodesNum=ceil(sum(CurrentNodesSrc)/TargetSrc),其中,NodesNum表示“所需的内部硬件设备数量”,ceil()表示“向上取整函数”,sum()表示“求和函数”,CurrentNodesSrc表示“每个内部硬件设备的资源消耗率”,TargetSrc表示“预设资源消耗率上限值”。具体的,所述根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果,包括以下步骤:通过求和函数计算多个内部硬件设备的资源消耗率的和值;根据所计算的和值与预设资源消耗率的上限值进行作商得到商值,并通过向上取整函数对所述商值进行取整以获得计算结果。例如,若服务器集群中3个CPU的CPU使用率分别为CPU1:81%、CPU2:75%、CPU3:90%,预设资源消耗率上限值为70%,将上述各数值代入预设算法,可以得到NodesNum(所需CPU数量)=ceil((81%+75%+90%)/70%),并算出NodesNum为4,说明在所规定的预设资源消耗率上限值为70%的情况下,所需要的CPU数量为4个,但实际上服务器集群的CPU数量为3个,因此需要对服务器集群的CPU进行扩容。
S105,确定所述计算结果是否符合所述目标系统的资源扩容条件。
在本发明实施例中,所述目标系统的资源扩容条件为根据所述预设算法的计算结果判断并得出所述目标系统所需的第二目标设备的数量大于当前所述第二目标设备的数量时,判定所述预设算法的计算结果符合所述目标系统的资源扩容条件。
S106,若计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标设备以实现所述目标系统的资源扩容。
在本发明实施例中,所述若得到的计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标内部硬件以实现所述目标系统的资源扩容,包括以下步骤:若计算得到的第二目标设备的数量大于当前数量,增加所述第二目标设备的数量以实现所述目标系统的资源扩容。
具体的,本实施例所述的扩容是增加相应的内部硬件设备的数量,以达到扩容的目的。根据上述步骤计算过程算出当前条件下,服务器集群所需CPU数量,减去现有服务器集群中的CPU数量,那么就是我们需要增加的CPU数量(例如,根据预设算法计算得出的CPU数量是4个,现有的CPU数量是3个,那么我们还需要增加1个CPU才能满足服务器集群的运行),通过增加服务器集群的CPU数量实现所述服务器集群的CPU资源扩容。
由以上可见,获取目标系统中内部硬件设备的资源消耗率;从所述内部硬件设备中选择第一目标设备集,所述第一目标设备集携带有目标标识,所述目标标识用于标识所述目标系统需要资源扩容;从所述第一目标设备集合中选择第二目标设备,所述第二目标设备的资源消耗率大于预设资源消耗率的上限值;根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果;确定所述计算结果是否符合所述目标系统的资源扩容条件;若计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标设备以实现所述目标系统的资源扩容。本实施例可以实现硬件资源的扩容,提高硬件资源扩容的准确性和资源合理利用率。
请参阅图2,对应上述一种资源扩容方法,本发明实施例还提出一种资源扩容装置,该装置100包括:获取单元101、第一选择单元102、第二选择单元103、计算单元104、第一确定单元105、执行单元106。
其中,所述获取单元101,用于获取目标系统中内部硬件设备的资源消耗率。
第一选择单元102,用于从所述内部硬件设备中选择第一目标设备集,所述第一目标设备集携带有目标标识,所述目标标识用于标识所述目标系统需要资源扩容。
第二选择单元103,用于从所述第一目标设备集中选择第二目标设备,所述第二目标设备的资源消耗率大于预设资源消耗率的上限值。
计算单元104,用于根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果。在本发明实施例中,所述预设算法为NodesNum=ceil(sum(CurrentNodesSrc)/TargetSrc),其中,NodesNum表示“所需的内部硬件设备数量”,ceil()表示“向上取整函数”,sum()表示“求和函数”,CurrentNodesSrc表示“每个内部硬件设备的资源消耗率”,TargetSrc表示“预设资源消耗率上限值”
第一确定单元105,用于确定所述计算结果是否符合所述目标系统的资源扩容条件。
执行单元106,用于若计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标设备以实现所述目标系统的资源扩容。
由以上可见,获取目标系统中内部硬件设备的资源消耗率;从所述内部硬件设备中选择第一目标设备集,所述第一目标设备集携带有目标标识,所述目标标识用于标识所述目标系统需要资源扩容;从所述第一目标设备集合中选择第二目标设备,所述第二目标设备的资源消耗率大于预设资源消耗率的上限值;根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果;确定所述计算结果是否符合所述目标系统的资源扩容条件;若计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标设备以实现所述目标系统的资源扩容。本实施例可以实现硬件资源的扩容,提高硬件资源扩容的准确性和资源合理利用率。
所述内部硬件设备包括CPU、内存或者磁盘;若所述内部硬件设备为CPU,所述资源消耗率为CPU使用率,所述第一获取单元,具体用于:通过预设第一时间函数获取所述CPU在运行时的不同工作时间,并根据所获取的工作时间利用预设第一计算公式得到所述CPU使用率;若所述内部硬件设备为内存,所述资源消耗率为内存使用率,所述第一获取单元,具体用于:通过预设第二时间函数获取所述内存在运行时的不同工作时间,并根据所获取的工作时间利用预设第二计算公式得到所述内存使用率;若所述内部硬件设备为磁盘,所述资源消耗率为磁盘使用率,所述第一获取单元,具体用于:通过预设第三时间函数获取所述磁盘在运行时的不同工作时间,并根据所获取的工作时间利用预设第三计算公式得到所述磁盘使用率。
请参阅图3,所述预设资源消耗率上限值为所述第一目标设备集的资源消耗率的正常值,所述第二选择单元103,包括:
第二确定单元103a,用于确定所述第一目标设备集中的资源消耗率是否超过所规定的正常值上限。
第二选择子单元103b,用于若所述第一目标设备集中的资源消耗率超过所规定的正常值上限,从所述第一目标设备集中选择所述资源消耗率超过所规定的正常值上限的内部硬件设备作为第二目标设备。
请参阅图4,所述计算单元104,包括:
第一计算子单元104a,用于通过求和函数计算多个内部硬件设备的资源消耗率的和值。
第二计算子单元104b,用于根据所计算的和值与预设资源消耗率的上限值进行作商得到商值,并通过向上取整函数对所述商值进行取整以获得计算结果。
请参阅图5,所述执行单元106,包括:
执行子单元106a,用于若计算得到的第二目标设备的数量大于当前数量,增加所述第二目标设备的数量以实现所述目标系统的资源扩容。
上述资源扩容装置与上述资源扩容方法一一对应,其具体的原理和过程与上述实施例所述方法相同,不再赘述。
上述资源扩容装置可以实现为一种计算机程序的形式,计算机程序可以在如图6所示的计算机设备上运行。
图6为本发明一种计算机设备的结构组成示意图。该设备可以是终端,也可以是服务器,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式装置等具有通信功能的电子装置。服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。参照图6,该计算机设备500包括通过系统总线501连接的处理器502、非易失性存储介质503、内存储器504和网络接口505。其中,该计算机设备500的非易失性存储介质503可存储操作系统5031和计算机程序5032,该计算机程序5032被执行时,可使得处理器502执行一种资源扩容方法。该计算机设备500的处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序被处理器执行时,可使得处理器502执行一种资源扩容方法。计算机设备500的网络接口505用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502执行所述计算机程序时实现如下操作:
获取目标系统中内部硬件设备的资源消耗率;
从所述内部硬件设备中选择第一目标设备集,所述第一目标设备集携带有目标标识,所述目标标识用于标识所述目标系统需要资源扩容;
从所述第一目标设备集中选择第二目标设备,所述第二目标设备的资源消耗率大于预设资源消耗率的上限值;
根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果;
确定所述计算结果是否符合所述目标系统的资源扩容条件;
若计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标设备以实现所述目标系统的资源扩容。
在一个实施例中,所述内部硬件设备包括CPU、内存或者磁盘;
若所述内部硬件设备为CPU,所述资源消耗率为CPU使用率,所述获取目标系统中内部硬件设备的资源消耗率,包括:
通过预设第一时间函数获取所述CPU在运行时的不同工作时间,并根据所获取的工作时间利用预设第一计算公式得到所述CPU使用率;
若所述内部硬件设备为内存,所述资源消耗率为内存使用率,所述获取目标系统中内存硬件设备的资源消耗率,包括:
通过预设第二时间函数获取所述内存在运行时的不同工作时间,并根据所获取的工作时间利用预设第二计算公式得到所述内存使用率;
若所述内部硬件设备为磁盘,所述资源消耗率为磁盘使用率,所述获取目标系统中内存硬件设备的资源消耗率,包括:
通过预设第三时间函数获取所述磁盘在运行时的不同工作时间,并根据所获取的工作时间利用预设第三计算公式得到所述磁盘使用率。
在一个实施例中,所述预设资源消耗率上限值为所述第一目标设备集的资源消耗率的正常值,所述从所述第一目标设备集中选择第二目标设备,包括:
确定所述第一目标设备集中的资源消耗率是否超过所规定的正常值上限;
若所述第一目标设备集中的资源消耗率超过所规定的正常值上限,从所述第一目标设备集中选择所述资源消耗率超过所规定的正常值上限的内部硬件设备作为第二目标设备。
在一个实施例中,所述预设算法为NodesNum=ceil(sum(CurrentNodesSrc)/TargetSrc),其中,NodesNum表示“所需的内部硬件设备数量”,ceil()表示“向上取整函数”,sum()表示“求和函数”,CurrentNodesSrc表示“每个内部硬件设备的资源消耗率”,TargetSrc表示“预设资源消耗率上限值”;所述根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果,包括:
通过求和函数计算多个内部硬件设备的资源消耗率的和值;
根据所计算的和值与预设资源消耗率的上限值进行作商得到商值,并通过向上取整函数对所述商值进行取整以获得计算结果。
在一个实施例中,所述若得到的计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标内部硬件以实现所述目标系统的资源扩容,包括:
若计算得到的第二目标设备的数量大于当前数量,增加所述第二目标设备的数量以实现所述目标系统的资源扩容。
本领域技术人员可以理解,图6中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图6所示实施例一致,在此不再赘述。
本发明提供了一种计算机可读存储介质,计算机可读存储介质存储有一个或者一个以上计算机程序,所述一个或者一个以上计算机程序可被一个或者一个以上的处理器执行,以实现以下步骤:
获取目标系统中内部硬件设备的资源消耗率;
从所述内部硬件设备中选择第一目标设备集,所述第一目标设备集携带有目标标识,所述目标标识用于标识所述目标系统需要资源扩容;
从所述第一目标设备集中选择第二目标设备,所述第二目标设备的资源消耗率大于预设资源消耗率的上限值;
根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果;
确定所述计算结果是否符合所述目标系统的资源扩容条件;
若计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标设备以实现所述目标系统的资源扩容。
在一个实施例中,所述内部硬件设备包括CPU、内存或者磁盘;
若所述内部硬件设备为CPU,所述资源消耗率为CPU使用率,所述获取目标系统中内部硬件设备的资源消耗率,包括:
通过预设第一时间函数获取所述CPU在运行时的不同工作时间,并根据所获取的工作时间利用预设第一计算公式得到所述CPU使用率;
若所述内部硬件设备为内存,所述资源消耗率为内存使用率,所述获取目标系统中内存硬件设备的资源消耗率,包括:
通过预设第二时间函数获取所述内存在运行时的不同工作时间,并根据所获取的工作时间利用预设第二计算公式得到所述内存使用率;
若所述内部硬件设备为磁盘,所述资源消耗率为磁盘使用率,所述获取目标系统中内存硬件设备的资源消耗率,包括:
通过预设第三时间函数获取所述磁盘在运行时的不同工作时间,并根据所获取的工作时间利用预设第三计算公式得到所述磁盘使用率。
在一个实施例中,所述预设资源消耗率上限值为所述第一目标设备集的资源消耗率的正常值,所述从所述第一目标设备集中选择第二目标设备,包括:
确定所述第一目标设备集中的资源消耗率是否超过所规定的正常值上限;
若所述第一目标设备集中的资源消耗率超过所规定的正常值上限,从所述第一目标设备集中选择所述资源消耗率超过所规定的正常值上限的内部硬件设备作为第二目标设备。
在一个实施例中,所述预设算法为NodesNum=ceil(sum(CurrentNodesSrc)/TargetSrc),其中,NodesNum表示“所需的内部硬件设备数量”,ceil()表示“向上取整函数”,sum()表示“求和函数”,CurrentNodesSrc表示“每个内部硬件设备的资源消耗率”,TargetSrc表示“预设资源消耗率上限值”;所述根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果,包括:
通过求和函数计算多个内部硬件设备的资源消耗率的和值;
根据所计算的和值与预设资源消耗率的上限值进行作商得到商值,并通过向上取整函数对所述商值进行取整以获得计算结果。
在一个实施例中,所述若得到的计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标内部硬件以实现所述目标系统的资源扩容,包括:
若计算得到的第二目标设备的数量大于当前数量,增加所述第二目标设备的数量以实现所述目标系统的资源扩容。
本发明前述的存储介质包括:磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等各种可以存储程序代码的介质。
本发明所有实施例中的单元可以通过通用集成电路,例如CPU(CentralProcessing Unit,中央处理器),或通过ASIC(Application SpecificIntegrated Circuit,专用集成电路)来实现。
本发明实施例资源扩容方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例资源扩容装置中的单元可以根据实际需要进行合并、划分和删减。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种资源扩容方法,其特征在于,所述方法包括:
获取目标系统中内部硬件设备的资源消耗率;
从所述内部硬件设备中选择第一目标设备集,所述第一目标设备集携带有目标标识,所述目标标识用于标识所述目标系统需要资源扩容;
从所述第一目标设备集中选择第二目标设备,所述第二目标设备的资源消耗率大于预设资源消耗率的上限值;
根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果;
确定所述计算结果是否符合所述目标系统的资源扩容条件;
若计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标设备以实现所述目标系统的资源扩容。
2.如权利要求1所述的方法,其特征在于,所述内部硬件设备包括CPU、内存或者磁盘;
若所述内部硬件设备为CPU,所述资源消耗率为CPU使用率,所述获取目标系统中内部硬件设备的资源消耗率,包括:
通过预设第一时间函数获取所述CPU在运行时的不同工作时间,并根据所获取的工作时间利用预设第一计算公式得到所述CPU使用率;
若所述内部硬件设备为内存,所述资源消耗率为内存使用率,所述获取目标系统中内存硬件设备的资源消耗率,包括:
通过预设第二时间函数获取所述内存在运行时的不同工作时间,并根据所获取的工作时间利用预设第二计算公式得到所述内存使用率;
若所述内部硬件设备为磁盘,所述资源消耗率为磁盘使用率,所述获取目标系统中内存硬件设备的资源消耗率,包括:
通过预设第三时间函数获取所述磁盘在运行时的不同工作时间,并根据所获取的工作时间利用预设第三计算公式得到所述磁盘使用率。
3.如权利要求1所述的方法,其特征在于,所述预设资源消耗率上限值为所述第一目标设备集的资源消耗率的正常值,所述从所述第一目标设备集中选择第二目标设备,包括:
确定所述第一目标设备集中的资源消耗率是否超过所规定的正常值上限;
若所述第一目标设备集中的资源消耗率超过所规定的正常值上限,从所述第一目标设备集中选择所述资源消耗率超过所规定的正常值上限的内部硬件设备作为第二目标设备。
4.如权利要求1所述的方法,其特征在于,所述预设算法为NodesNum=ceil(sum(CurrentNodesSrc)/TargetSrc),其中,NodesNum表示“所需的内部硬件设备数量”,ceil()表示“向上取整函数”,sum()表示“求和函数”,CurrentNodesSrc表示“每个内部硬件设备的资源消耗率”,TargetSrc表示“预设资源消耗率上限值”;所述根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果,包括:
通过求和函数计算多个内部硬件设备的资源消耗率的和值;
根据所计算的和值与预设资源消耗率的上限值进行作商得到商值,并通过向上取整函数对所述商值进行取整以获得计算结果。
5.如权利要求4所述的方法,其特征在于,所述若得到的计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标内部硬件以实现所述目标系统的资源扩容,包括:
若计算得到的第二目标设备的数量大于当前数量,增加所述第二目标设备的数量以实现所述目标系统的资源扩容。
6.一种资源扩容装置,其特征在于,所述装置包括:
获取单元,用于获取目标系统中内部硬件设备的资源消耗率;
第一选择单元,用于从所述内部硬件设备中选择第一目标设备集,所述第一目标设备集携带有目标标识,所述目标标识用于标识所述目标系统需要资源扩容;
第二选择单元,用于从所述第一目标设备集中选择第二目标设备,所述第二目标设备的资源消耗率大于预设资源消耗率的上限值;
计算单元,用于根据预设算法对所述第二目标设备的资源消耗率以及预设资源消耗率上限值进行计算获得计算结果;
第一确定单元,用于确定所述计算结果是否符合所述目标系统的资源扩容条件;
执行单元,用于若计算结果符合所述目标系统的资源扩容条件时,增加所述第二目标设备以实现所述目标系统的资源扩容。
7.如权利要求6所述的装置,其特征在于,所述内部硬件设备包括CPU、内存或者磁盘;
若所述内部硬件设备为CPU,所述资源消耗率为CPU使用率,所述第一获取单元,具体用于:通过预设第一时间函数获取所述CPU在运行时的不同工作时间,并根据所获取的工作时间利用预设第一计算公式得到所述CPU使用率;
若所述内部硬件设备为内存,所述资源消耗率为内存使用率,所述第一获取单元,具体用于:通过预设第二时间函数获取所述内存在运行时的不同工作时间,并根据所获取的工作时间利用预设第二计算公式得到所述内存使用率;
若所述内部硬件设备为磁盘,所述资源消耗率为磁盘使用率,所述第一获取单元,具体用于:通过预设第三时间函数获取所述磁盘在运行时的不同工作时间,并根据所获取的工作时间利用预设第三计算公式得到所述磁盘使用率。
8.如权利要求6所述的装置,其特征在于,所述预设资源消耗率上限值为所述第一目标设备集的资源消耗率的正常值,所述第二选择单元,包括:
第二确定单元,用于确定所述第一目标设备集中的资源消耗率是否超过所规定的正常值上限;
第二选择子单元,用于若所述第一目标设备集中的资源消耗率超过所规定的正常值上限,从所述第一目标设备集中选择所述资源消耗率超过所规定的正常值上限的内部硬件设备作为第二目标设备。
9.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-5任一项所述的资源扩容方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者一个以上计算机程序,所述一个或者一个以上计算机程序可被一个或者一个以上的处理器执行,以实现如权利要求1-5任一项所述的资源扩容方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811088228.5A CN109408225A (zh) | 2018-09-18 | 2018-09-18 | 资源扩容方法、装置、计算机设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811088228.5A CN109408225A (zh) | 2018-09-18 | 2018-09-18 | 资源扩容方法、装置、计算机设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109408225A true CN109408225A (zh) | 2019-03-01 |
Family
ID=65465584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811088228.5A Pending CN109408225A (zh) | 2018-09-18 | 2018-09-18 | 资源扩容方法、装置、计算机设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109408225A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110069349A (zh) * | 2019-05-05 | 2019-07-30 | 重庆天蓬网络有限公司 | 一种基于大数据平台的资源消耗核算系统 |
CN113190503A (zh) * | 2021-05-08 | 2021-07-30 | 重庆紫光华山智安科技有限公司 | 文件系统扩容方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104243292A (zh) * | 2014-10-14 | 2014-12-24 | 中国联合网络通信集团有限公司 | 一种邮件管理系统及邮箱动态扩容方法 |
CN104731656A (zh) * | 2013-12-23 | 2015-06-24 | 华为软件技术有限公司 | 一种资源分配方法及装置 |
WO2018000684A1 (zh) * | 2016-06-28 | 2018-01-04 | 中兴通讯股份有限公司 | 基于话务的扩容方法及装置 |
-
2018
- 2018-09-18 CN CN201811088228.5A patent/CN109408225A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104731656A (zh) * | 2013-12-23 | 2015-06-24 | 华为软件技术有限公司 | 一种资源分配方法及装置 |
CN104243292A (zh) * | 2014-10-14 | 2014-12-24 | 中国联合网络通信集团有限公司 | 一种邮件管理系统及邮箱动态扩容方法 |
WO2018000684A1 (zh) * | 2016-06-28 | 2018-01-04 | 中兴通讯股份有限公司 | 基于话务的扩容方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110069349A (zh) * | 2019-05-05 | 2019-07-30 | 重庆天蓬网络有限公司 | 一种基于大数据平台的资源消耗核算系统 |
CN113190503A (zh) * | 2021-05-08 | 2021-07-30 | 重庆紫光华山智安科技有限公司 | 文件系统扩容方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106326002B (zh) | 资源调度方法、装置及设备 | |
CN105955827B (zh) | 处理器计算资源的分配方法及装置 | |
CN106293914B (zh) | 一种任务调度的方法及终端 | |
US20140006044A1 (en) | System and method for preparing healthcare service bundles | |
CN110069519A (zh) | 数据信息管理方法、装置、计算机设备及存储介质 | |
CN105808347B (zh) | 集群服务器部署计算方法及装置 | |
CN109409902A (zh) | 风险用户识别方法、装置、计算机设备及存储介质 | |
CN105843731B (zh) | 计算机系统及通过计算机系统执行的性能监控方法 | |
CN107798030B (zh) | 数据表的拆分方法和装置 | |
CN109284895A (zh) | 项目任务分配方法、装置、计算机设备及存储介质 | |
CN109684167A (zh) | 应用程序cpu使用率的计算方法、装置、存储介质及终端 | |
CN109408225A (zh) | 资源扩容方法、装置、计算机设备以及存储介质 | |
CN106933315A (zh) | 一种终端温度调节的方法和终端 | |
CN109272219A (zh) | 绩效考核方法、装置、计算机设备及存储介质 | |
CN110503353A (zh) | 一种配送区域表达方法及装置 | |
CN111428978A (zh) | 一种补贴计算方法、装置、电子设备及存储介质 | |
CN112912893A (zh) | 佩戴口罩的检测方法、装置、终端设备及可读存储介质 | |
CN107748691A (zh) | 虚拟机部署方法、装置、设备及计算机可读存储介质 | |
CN108875778A (zh) | 人脸聚类方法、装置、系统和存储介质 | |
CN115033352A (zh) | 多核处理器任务调度方法、装置及设备、存储介质 | |
CN108344526A (zh) | 一种体温监测方法及装置 | |
CN109634747A (zh) | 基于Saltstack的资源扩容方法、装置、计算机设备以及存储介质 | |
CN109947568A (zh) | 定时任务处理方法、系统、计算机设备及存储介质 | |
CN109472312A (zh) | 应用程序评估方法、装置、计算机设备及存储介质 | |
CN109062328A (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 |