CN109614282B - 确定应用的系统资源使用信息的方法和装置 - Google Patents
确定应用的系统资源使用信息的方法和装置 Download PDFInfo
- Publication number
- CN109614282B CN109614282B CN201811142477.8A CN201811142477A CN109614282B CN 109614282 B CN109614282 B CN 109614282B CN 201811142477 A CN201811142477 A CN 201811142477A CN 109614282 B CN109614282 B CN 109614282B
- Authority
- CN
- China
- Prior art keywords
- usage
- utilization rates
- state
- rates
- determining
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3055—Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例提供一种确定应用的系统资源使用信息的方法和装置,该方法,包括:获取当前应用的系统资源的N个第一使用率,以及该当前应用所在服务器的该系统资源的N个第二使用率,该N个第一使用率和该N个第二使用率一一对应;该N个第一使用率不相同,且N为大于2的整数;根据该N个第一使用率和该N个第二使用率,确定目标状态阈值组;根据该目标状态阈值组,确定该当前应用的该系统资源的各第一使用状态区间。本申请实施例提供的确定应用的系统资源使用信息的方法和装置,获取的应用的系统资源使用率的各使用状态区间比较准确且效率高。
Description
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种确定应用的系统资源使用信息的方法和装置。
背景技术
中央处理器(central processing unit,简称CPU)资源、内存资源、磁盘输入输出(input output,简称IO)资源、网络IO资源等是重要的计算机系统资源,是保证应用正常运行的基础。
在实际生产环境中,经常会遇到由于上述的一种或者几种系统资源耗尽,使得正在运行的应用不能正常运行的情况。为了监控上述几种系统资源的使用状态,目前的方法是凭借用户的经验,将系统资源的使用率划分成几个使用状态区间,比如CPU对应的使用状态区间可为[0,10),[10,90),[90,100],分别代表CPU低使用率、CPU中使用率、CPU高使用率三种状态,该三个使用状态区间中包括二个阈值,一个为使用率10%,一个为使用率为90%,在用户凭借用户的经验确定好着两个阈值后,便可确定上述三个使用状态区间。
由于应用的数量很大,且每个应用的特点不相同,因此,用户很难准确的把握每个应用的特点,采用上述确定系统资源的使用状态区间方法会造成确定的应用的系统资源的使用状态区间不准确;且由于应用的数量很大,若每一个应用都采用上述方法确定相应应用的系统资源的使用状态区间,则效率低下。
发明内容
本申请实施例提供一种确定应用的系统资源使用信息的方法和装置,获取的应用的系统资源的使用状态区间比较准确且获取效率高。
第一方面,本申请实施例提供一种确定应用的系统资源使用信息的方法,包括:
获取当前应用的系统资源的N个第一使用率,以及所述当前应用所在服务器的所述系统资源的N个第二使用率,所述N个第一使用率和所述N个第二使用率一一对应;所述N个第一使用率不相同,且N为大于2的整数;
根据所述N个第一使用率和所述N个第二使用率,确定目标状态阈值组;
根据所述目标状态阈值组,确定所述当前应用的所述系统资源的各第一使用状态区间。
该方案中,根据所述N个第一使用率和所述N个第二使用率,获取目标状态阈值组,该目标状态阈值组用于得到所述当前应用的所述系统资源的各第一使用状态区间。即获取应用的系统资源的各使用状态区间时,不再基于用户的经验,而是基于多组包括该应用的系统资源使用率以及该应用所在服务器的系统资源使用率,每组中的数据的获取时刻相同,即充分考虑了应用的系统资源使用率以及该应用所在服务器的系统资源使用率之间的关系,使得获取的应用的系统资源的各使用状态区间比较准确。且由于不再基于用户的经验人为的确定应用的系统资源的各使用状态区间,节省了人力,提高了确定应用的系统资源的各使用状态区间的效率。
可选地,所述系统资源为如下中任意一项:中央处理器CPU资源、内存资源、磁盘输入输出IO资源,网络IO资源。
在一种可能的设计中,所述根据所述N个第一使用率和所述N个第二使用率,确定目标状态阈值组,包括,包括:
根据所述N个第一使用率,确定M个状态阈值组;M为正整数;
根据所述N个第一使用率和所述N个第二使用率,从所述M个状态阈值组中确定所述目标状态阈值组。
在一种可能的设计中,所述根据所述N个第一使用率,确定M个状态阈值组,包括:
确定所述N个第一使用率的S个分割点,S=N-1;
根据所述S个分割点,得到M个状态阈值组;其中,每个状态阈值组包括S个分割点中的P个分割点,所述M个状态阈值组包括S个分割点中的任意P个分割点的组合。
在一种可能的设计中,所述根据所述N个第一使用率和所述N个第二使用率,从所述M个状态阈值组中确定所述目标状态阈值组,包括:
对于一个状态阈值组:采用所述一个状态阈值组包括的分割点将所述N个第一使用率组成的集合分割成L个子集,L=P+1;
对于一个状态阈值组:根据L个子集各自包括的第一使用率的个数、所述N以及所述L个子集各自包括的第一使用率所对应的第二使用率属于各第二使用状态区间的概率,得到所述一个状态阈值组对应的熵;其中,所述熵为采用所述一个状态阈值组包括的分割点将所述N个第一使用率分割成L个子集时,所述集合所对应的熵,各所述第二使用状态区间为所述服务器的所述系统资源的预设使用状态区间;
确定对应的熵最小的状态阈值组为所述目标状态阈值组。
在一种可能的设计中,还包括:
获取第三使用率;所述第三使用率为当前时刻的所述当前应用的所述系统资源的使用率;
根据所述第三使用率和各所述第一使用状态区间,确定所述当前应用的所述系统资源的使用状态。
第二方面,本申请实施例提供一种确定应用的系统资源使用信息的装置,包括:
获取模块,用于获取当前应用的系统资源的N个第一使用率,以及所述当前应用所在服务器的所述系统资源的N个第二使用率,所述N个第一使用率和所述N个第二使用率一一对应;所述N个第一使用率不相同,且N为大于2的整数;
确定模块,用于根据所述N个第一使用率和所述N个第二使用率,确定目标状态阈值组;
所述确定模块,还用于根据所述目标状态阈值组,确定所述当前应用的所述系统资源的各第一使用状态区间。
在一种可能的设计中,所述确定模块,具体用于:
根据所述N个第一使用率,确定M个状态阈值组;M为正整数;
根据所述N个第一使用率和所述N个第二使用率,从所述M个状态阈值组中确定所述目标状态阈值组。
在一种可能的设计中,所述确定模块,具体用于:
确定所述N个第一使用率的S个分割点,S=N-1;
根据所述S个分割点,得到M个状态阈值组;其中,每个状态阈值组包括S个分割点中的P个分割点,所述M个状态阈值组包括S个分割点中的任意P个分割点的组合。
在一种可能的设计中,所述确定模块,具体用于:
对于一个状态阈值组:采用所述一个状态阈值组包括的分割点将所述N个第一使用率组成的集合分割成L个子集,L=P+1;
对于一个状态阈值组:根据L个子集各自包括的第一使用率的个数、所述N以及所述L个子集各自包括的第一使用率所对应的第二使用率属于各第二使用状态区间的概率,得到所述一个状态阈值组对应的熵;其中,所述熵为采用所述一个状态阈值组包括的分割点将所述N个第一使用率分割成L个子集时,所述集合所对应的熵,各所述第二使用状态区间为所述服务器的所述系统资源的预设使用状态区间;
确定对应的熵最小的状态阈值组为所述目标状态阈值组。
在一种可能的设计中,所述获取模块,还用于获取第三使用率;所述第三使用率为当前时刻的所述当前应用的所述系统资源的使用率;
所述确定模块,还用于根据所述第三使用率和各所述第一使用状态区间,确定所述当前应用的所述系统资源的使用状态。
第三方面,本申请实施例提供一种可读存储介质,包括程序或指令,当所述程序或指令在计算机上运行时,第一方面任一所述的方法被执行。
第四方面,本申请实施例提供一种服务器,包括:处理器,所述处理器与存储器耦合;
所述存储器用于,存储计算机程序;
所述处理器用于,调用所述存储器中存储的计算机程序,以实现第一方面任一所述的方法。
本申请中获取应用的系统资源的各使用状态区间的方法,不再基于用户的经验,而是基于多组包括该应用的系统资源使用率以及该应用所在服务器的系统资源使用率的数据获取到的,每组中的数据的获取时刻相同,充分考虑了应用的系统资源使用率以及该应用所在服务器的系统资源使用率之间的关系,使得获取的应用的系统资源使用率的各使用状态区间比较准确。且由于不再基于用户的经验人为的确定应用的系统资源的各使用状态区间,节省了人力,提高了确定应用的系统资源的各使用状态区间的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的确定应用的系统资源使用信息的方法的流程图一;
图2为本申请实施例提供的应用场景示意图;
图3为本申请实施例提供的确定应用的系统资源使用信息的方法的流程图二;
图4为本申请实施例提供的确定应用的系统资源使用信息的装置结构示意图;
图5为本申请实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。本申请中术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。下面,通过具体实施例对本申请所示的技术方案进行详细说明。需要说明的是,下面几个具体实施例可以相互结合,对于相同或相似的内容,在不同的实施例中不再进行重复说明。
图1为本申请实施例提供的确定应用的系统资源使用信息的方法的流程图一,参见图1,本实施例的方法包括:
步骤S101、获取当前应用的系统资源的N个第一使用率,以及该当前应用所在服务器的该系统资源的N个第二使用率,N个第一使用率和N个第二使用率一一对应;N个第一使用率不相同,且N为大于2的整数;
步骤S102、根据N个第一使用率和N个第二使用率,确定该当前应用的目标状态阈值组;
步骤S103、根据该目标状态阈值组,确定该当前应用的该系统资源的各第一使用状态区间。
具体地,本实施的方法可基于确定应用的系统资源使用信息的装置实现,该装置可位于服务器中,基于硬件或软件实现。
可选地,该装置位于的服务器与该当前应用所在的服务器为同一个服务器。
可选地,该装置位于的服务器与该当前应用所在的服务器不相同。
图2为本申请实施例提供的一种应用场景示意图;若该装置位于的服务器与该当前应用所在的服务器不相同,本实施例的应用场景图可为图2所示;参见图2,图2中包括第一服务器11和至少一个第二服务器12。此时,确定应用的系统资源使用信息的装置位于第一服务器11中,当前应用为第二服务器12中的应用。
本实施例的系统资源可为如下中的任一:CPU资源、内存资源、磁盘IO资源,网络IO资源。系统资源还可为其它的资源,本实施例中并不限制。本实施例中的当前应用可为任意的应用,比如,当前应用可为微信、淘宝等,本实施例中并不限制。
本实施例中的当前应用的系统资源的各使用状态区间是指将当前应用的系统资源的使用率0%~100%划分后的若干个区间,且一个使用状态区间可以指示当前应用的系统资源的一种使用状态。比如当前应用的系统资源的各使用状态区间为[0%~5%),[5%~40%),[40%~100%),[0%~5%)指示的使用状态为当前应用的系统资源的使用率较低,[5%~40%)指示的使用状态为当前应用的系统资源的使用率中等,[40%~100%)指示的使用状态为当前应用的系统资源的使用率较高。
下面以系统资源为CPU资源,以当前应用为微信来说明本实施例中的确定应用的系统资源使用信息的方法。
对于步骤S101:获取微信的CPU资源的N个第一使用率,以及微信所在服务器的CPU资源的N个第二使用率,N个第一使用率和N个第二使用率一一对应;N个第一使用率不相同,且N为大于2的整数。
具体地,N个第一使用率为N个时刻的微信的CPU资源使用率,N个第二使用率为N个时刻的微信所在服务器的CPU资源使用率,N个第一使用率和N个第二使用率一一对应是指,N个第一使用率的N个获取时刻与N个第二使用率的N个获取时刻相同,即第一使用率对应的第二使用率是指获取时刻与该第一使用率相同的第二使用率。比如:14:00时微信的CPU资源使用率为第一使用率a,14:00时微信所在的服务器的CPU资源使用率为第二使用率b,则第一使用率a对应的第二使用率为第二使用率b。
其中,可在预设时长内每间隔一段时间获取一次第一使用率,以及第二使用率,也就是说在相同的时刻获取一次第一使用率和第二使用率。间隔的一段时间可为1小时,可为2小时,还可为0.5小时,按照具体情况设定,本实施例中并不限制;预设时长可为本实施例中的预设时长可为7~30天中的任一时长,当然也可为其它的时长,本实施例中并不限制。
那么,在预设时长内可获取H个第一使用率,H个第二使用率,H≥N。该H个第一使用率中可能存在相同的第一使用率,由于在对微信的CPU资源的使用状态区间的确定过程中,只需要使用相同的第一使用率中的一个第一使用率即可,因此,获取微信的CPU资源的N个第一使用率,可包括:
获取微信的CPU资源的H个第一使用率,将H个第一使用率去重后,得到F个第一使用率,确定F个第一使用率中的至少部分第一使用率为N个第一使用率;即N个第一使用率不相同。可选地,H=N=F。
对于步骤S102、根据N个第一使用率和N个第二使用率,获取目标状态阈值组;
具体地,在一种方式中,可基于熵的离散化算法,根据N个第一使用率和N个第二使用率,获取目标状态阈值组;在另一种方式中,可以基于神经网络算法,根据N个第一使用率和N个第二使用率,获取目标状态阈值组。还可基于其它的机器学习的算法,根据N个第一使用率和N个第二使用率,获取目标状态阈值组。
其中,目标状态阈值组中包括至少一个状态阈值,状态阈值用于将使用率0%~100%划分成至少两个使用状态区间。
下面以基于熵的离散化算法例,说明获取目标状态阈值组的方法。
具体地:根据N个第一使用率和N个第二使用率,获取目标状态阈值组,包括:
a1、根据N个第一使用率,确定M个状态阈值组;M为正整数;
a2、根据N个第一使用率和N个第二使用率,从M个状态阈值组中确定目标状态阈值组。
对于a1、根据N个第一使用率,确定M个状态阈值组,包括:
(1)确定N个第一使用率的S个分割点,S=N-1;
具体地,确定N个第一使用率的S个分割点包括:
将N个第一使用率按照从小到大或者从大到小的顺序排序,得到排序后的N个第一使用率;
对于排序后的N个第一使用率中的一组相邻的两个第一使用率,确定该一组中的两个第一使用率的平均值为S个分割点中的一个分割点。
一种方式中,可通过如下公式获取分割点:
其中,Ti为第i个分割点,Cai为排序后的N个第一使用率中的第i个第一使用率,Cai+1为排序后的N个第一使用率中的第i+1个第一使用率。
示例性的,N个第一使用率分别为:2.0%、6.0%,8.0%,10.0%,16.0%。则S个分割点为(2.0%+6.0%)/2=4.0%,(6.0%+8.0%)/2=7.0%,(8.0%+10.0%)/2=9.0%,(10.0%+16.0%)/2=13.0%。
(2)根据S个分割点,得到M个状态阈值组;其中,每个状态阈值组包括S个分割点中的P个分割点,M个状态阈值组包括S个分割点中的任意P个分割点的组合。
其中,l为S个分割点中的一个分割点,r为S个分割点中的另一个分割点,T为S个分割点的集合。
示例性地,如(1)中个的示例,S个分割点为:4.0%,7.0%,9.0%,13.0%,若P=2,则M个状态阈值组分别为(4.0%,7.0%),(4.0%,9.0%),(9.0%,13.0%),(4.0%,13.0%),(7.0%,9.0%),(7.0%,13.0%),一共6个状态阈值组。可知P=2时,M=[S(S-1)]/2。
若P=1,则M个状态阈值组分别为(4.0%),(7.0%),(9.0%),(13.0%),一共4个状态阈值组。可知P=1时,M=S。
对于a2,根据N个第一使用率和N个第二使用率,从M个状态阈值组中确定目标状态阈值组,包括:
(1)对于一个状态阈值组:采用一个状态阈值组包括的分割点将N个第一使用率组成的集合分割成L个子集,L=P+1;
示例性地,若N个第一使用率分别为:2.0%、6.0%,8.0%,10.0%,16.0%,S个分割点为:4.0%,7.0%,9.0%,13.0%,P=2,M个状态阈值组分别为(4.0%,7.0%),(4.0%,9.0%),(9.0%,13.0%),(4.0%,13.0%),(7.0%,9.0%),(7.0%,13.0%)。
对于状态阈值组(4.0%,7.0%):3个子集分别为D1={2.0%},D2={6.0%},D3={8.0%,10.0%,16.0%}。
对于状态阈值组(4.0%,9.0%):3个子集分别为D1={2.0%},D2={6.0%,8.0%},D3={10.0%,16.0%}。
其余的4个状态阈值组对应的L个子集此处不再赘述。
(2)对于一个状态阈值组:根据L个子集各自包括的第一使用率的个数、N以及L个子集各自包括的第一使用率所对应的第二使用率属于各第二使用状态区间的概率,得到该状态阈值组对应的熵;其中,该熵为采用该状态阈值组包括的分割点将N个第一使用率组成的集合分割成L个子集时,该集合所对应的熵,各第二使用状态区间为微信所在的服务器的CPU资源对应的预设使用状态区间;可以理解的是,若第二使用状态区间的个数为K,则K=P+1。
具体地,该一个状态阈值组对应的熵,可通过如下公式获得:
其中,I为该一个状态阈值组对应的熵,|Di|为该一个状态阈值组对应的L个子集中的第i个子集包括的第一使用率的个数,|D|=N,pi为L个子集中的一个子集包括的第一使用率对应的第二使用率属于K个第二使用状态区间中的第i个第二使用状态区间的概率。
示例性地,若N个第一使用率分别为:2.0%、6.0%,8.0%,10.0%,16.0%,S个分割点为:4.0%,7.0%,9.0%,13.0%,P=2,6个状态阈值组分别为(4.0%,7.0%),(4.0%,9.0%),(9.0%,13.0%),(4.0%,13.0%),(7.0%,9.0%),(7.0%,13.0%)。N个第一使用率对应的N个第二使用率分别为:3.0%、10.0%,15.0%,20.0%,95.0%。K个第二使用状态区间为[0,10),[10,90),[90,100),即N=5,S=4,M=6,K=3。
以状态阈值组(4.0%,7.0%)为例,说明状态阈值组(4.0%,7.0%)对应的熵的获取过程:
状态阈值组(4.0%,7.0%)对应的3个子集分别为D1={2.0%},D2={6.0%},D3={8.0%,10.0%,16.0%};
|D1|=1,子集D1中第一使用率2.0%对应的第二使用率3.0%属于K个第二使用状态区间中第一个使用状态区间[0,10)的概率为1,属于K个第二使用状态区间中第二个使用状态区间[10,90)的概率为0,属于K个第二使用状态区间中第三个使用状态区间[90,100)的概率为0,则H(D1)=-1×log1–0×log0–0×log0=0;
|D2|=1,子集D2中第一使用率6.0%对应的第二使用率10.0%属于K个第二使用状态区间中第一个使用状态区间[0,10)的概率为0,属于K个第二使用状态区间中第二个使用状态区间[10,90)的概率为1,属于K个第二使用状态区间中第三个使用状态区间[90,100)的概率为0,则H(D2)=-0×log0–1×log1–0×log0。
|D3|=3,子集D3中第一使用率8.0%对应的第二使用率15.0%属于K第二使用状态区间中第一个使用状态区间[0,10)的概率为0,子集D3中第一使用率10.0%对应的第二使用率20.0%属于K个第二使用状态区间中第一个使用状态区间[0,10)的概率为0,子集D3中第一使用率16.0%对应的第二使用率95.0%属于K个第二使用状态区间中第一个使用状态区间[0,10)的概率为0,则子集D3中第一使用率对应的第二使用率属于K个第二使用状态区间中第一个使用状态区间[0,10)的概率p1=(0+0+0)/3=0;子集D3中第一使用率8.0%对应的第二使用率15.0%属于K第二使用状态区间中第二个使用状态区间[10,90)的概率为1,子集D3中第一使用率10.0%对应的第二使用率20.0%属于K个第二使用状态区间中第二个使用状态区间[10,90)的概率为1,子集D3中第一使用率16.0%对应的第二使用率95.0%属于K个第二使用状态区间中第二个使用状态区间[10,90)的概率为0,则子集D3中第一使用率对应的第二使用率属于K个第二使用状态区间中第二个使用状态区间[10,90)的概率p2=(1+1+0)/3=2/3;子集D3中第一使用率8.0%对应的第二使用率15.0%属于K第二使用状态区间中第三个使用状态区间[90,100)的概率为0,子集D3中第一使用率10.0%对应的第二使用率20.0%属于K个第二使用状态区间中第三个使用状态区间[90,100)的概率为0,子集D3中第一使用率16.0%对应的第二使用率95.0%属于K个第二使用状态区间中第三个使用状态区间[90,100)的概率为1,则子集D3中第一使用率对应的第二使用率属于K个第二使用状态区间中第三个使用状态区间[90,100)的概率p3=(0+0+1)/3=1/3;则H(D3)=-0×log0–2/3×log(2/3)–1/3×log(1/3)。
状态阈值组(4.0%,7.0%)对应的熵I=1/5H(D1)+1/5H(D2)+3/5H(D3)。
通过上述相同的方法,得到其他状态阈值组对应的熵。
(3)确定对应的熵最小的状态阈值组为目标状态阈值组。
将M个状态阈值组中对应的熵最小的状态阈值组作为目标状态阈值组。
对于步骤S103、根据目标状态阈值组,得到微信的CPU资源的率的各第一使用状态区间。
具体地,由于微信的系统资源使用率的范围从0%~100%,目标状态阈值组中包括P个分割点,P个分割点可将0%~100%划分成P+1个区间,该P+1个区间即为微信的CPU资源的使用率的各第一使用状态区间,即第一使用状态区间的个数为P+1个。各第一使用状态区间用于判断微信的CPU资源的使用状态。
示例性地,如目标状态阈值组中包括的分割点为8%和15%,则8%和15%将0%~100%划分成3个第一使用状态区间:[0%~8%),[8%~15%),[15%~100%)。
由于一个信息系统越是有序,信息熵就越低;反之,一个信息系统越是混乱,信息熵就越高。基于熵的离散化算法的主要思想是通过计算分割点组成的组对应的信息熵,用组对应的信息熵体现组的重要程度,组对应的信息熵越少,说明该组包括的分割点将待划分的对象(本实施例中为0%~100%的范围)划分后的新子集的决策属性越趋于单一。那么目标状态阈值组中的分割点将0%~100%划分的上述各第一使用状态区间的属性最单一,第一使用状态区间的属性为当前应用的系统资源使用状态,当前应用的系统资源使用状态比如可为低使用率,中使用率,高使用率;因此,第一使用状态区间的属性最单一,也就是目标状态阈值组中的分割点将0%~100%划分的上述各第一使用状态区间越准确。
本实施例中获取应用的系统资源的各使用状态区间的方法,不再基于用户的经验,而是基于多组包括该应用的系统资源使用率以及该应用所在服务器的系统资源使用率的数据获取到的,每组的数据为相同时刻获取到的数据,充分考虑了应用的系统资源使用率以及该应用所在服务器的系统资源使用率之间的关系,使得获取的应用的系统资源使用率的各使用状态区间比较准确。且由于不再基于用户的经验人为的确定应用的系统资源的各使用状态区间,节省了人力,提高了确定应用的系统资源的各使用状态区间的效率。
应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图3为本申请实施例提供的确定应用的系统资源使用信息的方法的流程图二,参见图3,本实施例的方法包括:
步骤S201、获取当前应用的系统资源的N个第一使用率,以及该当前应用所在服务器的该系统资源的N个第二使用率,N个第一使用率和N个第二使用率一一对应;N个第一使用率不相同,且N为大于2的整数;
步骤S202、根据N个第一使用率和N个第二使用率,确定目标状态阈值组;
步骤S203、根据该目标状态阈值组,确定该当前应用的该系统资源的各第一使用状态区间;
步骤S204、获取第三使用率;该第三使用率为当前时刻的该当前应用的该系统资源的使用率;
步骤S205、根据该第三使用率和各第一使用状态区间,确定该当前应用的当前系统资源的使用状态。
具体地,对于步骤S201~步骤S203参照上一实施例中的阐述,本实施例中不再赘述。
对于步骤S204~步骤S205,在得到该当前应用的系统资源的各第一使用状态区间后,获取到一个当前应用的实时系统资源使用率,就可以确定当前应用对该系统资源的当前使用状态。
比如,当前应用的实时系统资源使用率即第三使用率为45%,当前应用的系统资源的各第一使用状态区间为[0%~8%),[8%~15%),[15%~100%),则说明当前应用对系统资源的使用状态为高使用率,用户可根据此信息判断该当前应用是否出现了问题。
若本实施例对应的方法的应用场景为图2所示的应用场景,则监控各第二服务器的应用的任务由第一服务器完成,无需在每台第二服务器上标定每个应用的使用状态区间,节省了人力,提高了监控应用的效率。
本实施例的方法由于获取的应用的系统资源的各使用状态区间比较准确,因此,对应用的系统资源的使用状态的判断也比较准确。
应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图4为本申请实施例提供的确定应用的系统资源使用信息的装置结构示意图,如图4所示,本实施例的装置可以包括:接收模块41,获取模块42和确定模块43;
获取模块41,用于获取当前应用的系统资源的N个第一使用率,以及所述当前应用所在服务器的所述系统资源的N个第二使用率,所述N个第一使用率和所述N个第二使用率一一对应;所述N个第一使用率不相同,且N为大于2的整数;
确定模块42,用于根据所述N个第一使用率和所述N个第二使用率,确定目标状态阈值组;
所述确定模块42,还用于根据所述目标状态阈值组,确定所述当前应用的所述系统资源的各第一使用状态区间。
在一种可能的设计中,所述确定模块42,具体用于:
根据所述N个第一使用率,确定M个状态阈值组;M为正整数;
根据所述N个第一使用率和所述N个第二使用率,从所述M个状态阈值组中确定所述目标状态阈值组。
在一种可能的设计中,所述确定模块42,具体用于:
确定所述N个第一使用率的S个分割点,S=N-1;
根据所述S个分割点,得到M个状态阈值组;其中,每个状态阈值组包括S个分割点中的P个分割点,所述M个状态阈值组包括S个分割点中的任意P个分割点的组合。
在一种可能的设计中,所述确定模块42,具体用于:
对于一个状态阈值组:采用所述一个状态阈值组包括的分割点将所述N个第一使用率组成的集合分割成L个子集,L=P+1;
对于一个状态阈值组:根据L个子集各自包括的第一使用率的个数、所述N以及所述L个子集各自包括的第一使用率所对应的第二使用率属于各第二使用状态区间的概率,得到所述一个状态阈值组对应的熵;其中,所述熵为采用所述一个状态阈值组包括的分割点将所述N个第一使用率分割成L个子集时,所述集合所对应的熵,各所述第二使用状态区间为所述第二服务器的所述系统资源的使用率对应的预设使用状态区间;
确定对应的熵最小的状态阈值组为所述目标状态阈值组。
在一种可能的设计中,所述确定模块42,具体用于:
将所述N个第一使用率按照从小到大或者从大到小的顺序排序,得到排序后的N个第一使用率;
对于排序后的N个第一使用率中的一组相邻的两个第一使用率,确定所述一组中的两个第一使用率的平均值为所述S个分割点中的一个分割点。
在一种可能的设计中,所述获取模块41,还用于获取第三使用率;所述第三使用率为当前时刻的所述当前应用的所述系统资源的使用率;
所述确定模块42,还用于根据所述第三使用率和各所述第一使用状态区间,确定所述当前应用的所述系统资源的使用状态。
本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图5为本申请实施例提供的服务器的结构示意图;如图5所示,本实施例的装置可以包括:处理器51,所述处理器51与存储器52耦合;
所述存储器52用于,存储计算机程序;
所述处理器51用于,执行所述存储器52中存储的计算机程序,以使得所述服务器执行上述任意方法实施例所述的方法。
本申请实施例提供一种可读存储介质,包括程序或指令,当所述程序或指令在计算机上运行时,如上述任意方法实施例所述的方法被执行。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请实施例的技术方案,而非对其限制;尽管参照前述各实施例对本申请实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请实施例方案的范围。
Claims (6)
1.一种确定应用的系统资源使用信息的方法,其特征在于,包括:
获取当前应用的系统资源的N个第一使用率,以及所述当前应用所在服务器的所述系统资源的N个第二使用率,所述N个第一使用率和所述N个第二使用率一一对应;所述N个第一使用率不相同,且N为大于2的整数;
将所述N个第一使用率按照从小到大或者从大到小的顺序排序,得到排序后的N个第一使用率;
确定所述排序后的N个第一使用率中的一组相邻的两个第一使用率的平均值;
确定所述平均值为N个第一使用率的S个分割点中的一个分割点,以确定所述S个分割点;其中,S=N-1;根据所述S个分割点,得到M个状态阈值组;其中,每个状态阈值组包括S个分割点中的P个分割点,所述M个状态阈值组包括S个分割点中的任意P个分割点的组合;M为正整数;
基于熵的离散化算法,根据所述N个第一使用率和所述N个第二使用率,从所述M个状态阈值组中确定目标状态阈值组;
根据所述目标状态阈值组,确定所述当前应用的所述系统资源的各第一使用状态区间。
2.根据权利要求1所述的方法,其特征在于,所述基于熵的离散化算法,根据所述N个第一使用率和所述N个第二使用率,从所述M个状态阈值组中确定所述目标状态阈值组,包括:
对于一个状态阈值组:采用所述一个状态阈值组包括的分割点将所述N个第一使用率组成的集合分割成L个子集,L=P+1;
对于一个状态阈值组:根据L个子集各自包括的第一使用率的个数、所述N以及所述L个子集各自包括的第一使用率所对应的第二使用率属于各第二使用状态区间的概率,得到所述一个状态阈值组对应的熵;其中,所述熵为采用所述一个状态阈值组包括的分割点将所述N个第一使用率分割成L个子集时,所述集合所对应的熵,各所述第二使用状态区间为所述服务器的所述系统资源的预设使用状态区间;
确定对应的熵最小的状态阈值组为所述目标状态阈值组。
3.根据权利要求1或2所述的方法,其特征在于,还包括:
获取第三使用率;所述第三使用率为当前时刻的所述当前应用的所述系统资源的使用率;
根据所述第三使用率和各所述第一使用状态区间,确定所述当前应用的所述系统资源的使用状态。
4.一种确定应用的系统资源使用信息的装置,其特征在于,包括:
获取模块,用于获取当前应用的系统资源的N个第一使用率,以及所述当前应用所在服务器的所述系统资源的N个第二使用率,所述N个第一使用率和所述N个第二使用率一一对应;所述N个第一使用率不相同,且N为大于2的整数;
确定模块,用于将所述N个第一使用率按照从小到大或者从大到小的顺序排序,得到排序后的N个第一使用率;确定所述排序后的N个第一使用率中的一组相邻的两个第一使用率的平均值;确定所述平均值为N个第一使用率的S个分割点中的一个分割点,以确定所述S个分割点;其中,S=N-1;根据所述S个分割点,得到M个状态阈值组;其中,每个状态阈值组包括S个分割点中的P个分割点,所述M个状态阈值组包括S个分割点中的任意P个分割点的组合;M为正整数;基于熵的离散化算法,根据所述N个第一使用率和所述N个第二使用率,从所述M个状态阈值组中确定目标状态阈值组;
所述确定模块,还用于根据所述目标状态阈值组,确定所述当前应用的所述系统资源的各第一使用状态区间。
5.一种可读存储介质,其特征在于,包括程序或指令,当所述程序或指令在计算机上运行时,权利要求1或2所述的方法被执行。
6.一种电子设备,其特征在于,包括:处理器,所述处理器与存储器耦合;
所述存储器用于,存储计算机程序;
所述处理器用于,调用所述存储器中存储的计算机程序,以实现权利要求1或2所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811142477.8A CN109614282B (zh) | 2018-09-28 | 2018-09-28 | 确定应用的系统资源使用信息的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811142477.8A CN109614282B (zh) | 2018-09-28 | 2018-09-28 | 确定应用的系统资源使用信息的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109614282A CN109614282A (zh) | 2019-04-12 |
CN109614282B true CN109614282B (zh) | 2022-06-03 |
Family
ID=66002835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811142477.8A Active CN109614282B (zh) | 2018-09-28 | 2018-09-28 | 确定应用的系统资源使用信息的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109614282B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1936849A (zh) * | 2005-09-19 | 2007-03-28 | 国际商业机器公司 | 资源动态调整方法及设备 |
CN102270157A (zh) * | 2011-07-25 | 2011-12-07 | 浪潮(北京)电子信息产业有限公司 | 一种实现服务器资源分配的系统及方法 |
CN104346201A (zh) * | 2014-09-30 | 2015-02-11 | 北京金山安全软件有限公司 | 获取应用程序消耗系统资源的方法、装置及终端 |
CN104714851A (zh) * | 2015-03-30 | 2015-06-17 | 中国联合网络通信集团有限公司 | 一种实现资源分配的方法及装置 |
CN105335134A (zh) * | 2014-06-30 | 2016-02-17 | 北京金山安全软件有限公司 | 处理app的cpu占用率异常的方法、装置及移动终端 |
CN108255673A (zh) * | 2017-12-29 | 2018-07-06 | 东软集团股份有限公司 | 应用程序占用资源的检测方法、装置和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9032168B2 (en) * | 2012-05-31 | 2015-05-12 | Htc Corporation | Memory management methods and systems for mobile devices |
-
2018
- 2018-09-28 CN CN201811142477.8A patent/CN109614282B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1936849A (zh) * | 2005-09-19 | 2007-03-28 | 国际商业机器公司 | 资源动态调整方法及设备 |
CN102270157A (zh) * | 2011-07-25 | 2011-12-07 | 浪潮(北京)电子信息产业有限公司 | 一种实现服务器资源分配的系统及方法 |
CN105335134A (zh) * | 2014-06-30 | 2016-02-17 | 北京金山安全软件有限公司 | 处理app的cpu占用率异常的方法、装置及移动终端 |
CN104346201A (zh) * | 2014-09-30 | 2015-02-11 | 北京金山安全软件有限公司 | 获取应用程序消耗系统资源的方法、装置及终端 |
CN104714851A (zh) * | 2015-03-30 | 2015-06-17 | 中国联合网络通信集团有限公司 | 一种实现资源分配的方法及装置 |
CN108255673A (zh) * | 2017-12-29 | 2018-07-06 | 东软集团股份有限公司 | 应用程序占用资源的检测方法、装置和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109614282A (zh) | 2019-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10103942B2 (en) | Computer processing method and system for network data | |
US8434085B2 (en) | Scalable scheduling of tasks in heterogeneous systems | |
EP3139270A1 (en) | Data mining method and node | |
US20160378557A1 (en) | Task allocation determination apparatus, control method, and program | |
KR20210156243A (ko) | 딥러닝 프레임워크의 훈련 방법, 장치 및 저장 매체 | |
Qazi et al. | Workload prediction of virtual machines for harnessing data center resources | |
CN110414569A (zh) | 聚类实现方法及装置 | |
US20230237306A1 (en) | Anomaly score adjustment across anomaly generators | |
CN111046091A (zh) | 数据交换系统的运行方法、装置及设备 | |
US11714834B2 (en) | Data compression based on co-clustering of multiple parameters for AI training | |
CN114448989B (zh) | 调整消息分发的方法、装置、电子设备、存储介质及产品 | |
CN109634714B (zh) | 一种智能调度的方法及装置 | |
CN109614282B (zh) | 确定应用的系统资源使用信息的方法和装置 | |
CN116700933B (zh) | 一种面向异构算力联邦的多集群作业调度系统和方法 | |
CN110728372B (zh) | 一种人工智能模型动态加载的集群设计方法及集群系统 | |
CN106874215B (zh) | 一种基于Spark算子的序列化存储优化方法 | |
WO2017069775A1 (en) | Data storage device monitoring | |
CN113254190B (zh) | 基于负载能力的动态流调度方法、系统和计算机存储介质 | |
Shardakov et al. | Generating of the coefficient matrix of the system of homogeneous differential equations | |
Lolos et al. | Elastic resource management with adaptive state space partitioning of Markov Decision Processes | |
CN112684398B (zh) | 基于动态线损的电能表运行误差监测方法及系统 | |
CN109901931B (zh) | 一种归约函数数量确定方法、装置及系统 | |
CN113032522A (zh) | 一种文本并行数据挖掘系统及方法 | |
CN113342518A (zh) | 任务处理方法和装置 | |
CN112073517B (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 |