CN116107761B - 性能调优方法、系统、电子设备及可读存储介质 - Google Patents
性能调优方法、系统、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN116107761B CN116107761B CN202310362927.9A CN202310362927A CN116107761B CN 116107761 B CN116107761 B CN 116107761B CN 202310362927 A CN202310362927 A CN 202310362927A CN 116107761 B CN116107761 B CN 116107761B
- Authority
- CN
- China
- Prior art keywords
- task group
- target
- detected
- service
- task
- 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
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
-
- 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)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供一种性能调优方法、系统、电子设备及可读存储介质,所述方法包括获取运行在计算设备上待检测任务组,可以基于所述待检测任务组中各个任务组所使用的系统资源的数量,从所述待检测任务组中确定至少一个目标任务组;确定所述至少一个目标任务组中的任一目标任务组对应的服务类别,并进一步确定该目标任务组所使用的所述目标系统资源是否达到预与所述服务类别对应的第二阈值;如果所述至少一个目标任务组中的任一目标任务组所使用的所述目标系统资源达到与所述服务类别对应的第二阈值,基于所述目标系统资源对应的调优策略,针对该目标任务组进行性能调优。
Description
技术领域
本申请涉及操作系统性能调优领域,尤其涉及一种性能调优方法、系统、电子设备及可读存储介质。
背景技术
计算设备搭载的操作系统在运行各项服务时,会使用计算设备上的各种系统资源,例如CPU处理资源,内存资源等等。而操作系统中运行的各项服务对各种系统资源的使用需求是不一样的。例如web服务主要使用的资源是CPU处理资源和网络资源,也会使用一些内存资源,但是基本不使用IO资源。数据库主要使用的资源则是内存资源和IO资源。
这样在同样规格的物理机或虚拟机环境上,各种服务在达到最大服务能力的时候,处在高负载的系统资源往往是不同的。那么,在进行调优时,就需要找到处在高负载的系统资源进行优化,这样才能够真正达成针对所述服务的性能的提升。同时,可能存在未知的服务使用了较多的系统资源,那么在进行调优时,还需要确定未知的服务使用的系统资源是否处于高负载,以免造成错误的性能优化,影响服务的正常运行。
发明内容
本申请提供一种性能调优方法,所述方法包括:
获取运行在计算设备上待检测任务组,确定所述待检测任务组中是否包含目标服务所占用的任务组;
如果所述待检测任务组中不包含目标服务所占用的任务组,基于所述待检测任务组中各个任务组所使用的系统资源的数量,从所述待检测任务组中确定至少一个目标任务组;其中,所述至少一个目标任务组所使用的至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值;
确定所述至少一个目标任务组中的任一目标任务组对应的服务类别,并进一步确定该目标任务组所使用的所述目标系统资源是否达到与所述服务类别对应的第二阈值;
如果所述至少一个目标任务组中的任一目标任务组所使用的所述目标系统资源达到与所述服务类别对应的第二阈值,基于所述目标系统资源对应的调优策略,针对该目标任务组进行性能调优。
可选的,所述还包括:
如果所述待检测任务组中包含所述目标服务所占用的任务组,则基于与所述目标服务对应的调优策略针对该任务组进行性能调优。
可选的,所述还包括:
将所述待检测任务组与预设的与所述目标服务对应的第一任务组列表进行匹配;其中,所述第一任务组列表包括所述目标服务所占用的至少一个任务组;
根据匹配结果确定所述待检测任务组中是否包含所述目标服务所占用的任务组。
可选的,所述基于所述待检测任务组中各个任务组所使用的系统资源的数量,从所述待检测任务组中确定至少一个目标任务组之前,所述方法还包括:
将所述待检测任务组与预设的与系统服务对应的第二任务组列表进行匹配;其中,所述第二任务组列表包括所述计算设备搭载的操作系统中的系统服务所占用的至少一个任务组;
根据匹配结果确定所述待检测任务组中包含的所述系统服务所占用的任务组,并从所述待检测任务组中删除确定出的所述计算设备搭载的操作系统中的系统服务所占用的任务组。
可选的,所述还包括:
如果所述待检测任务组中不包含目标服务所占用的任务组,且所述待检测任务组中不存在使用的所述至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值的任务组,则将所述待检测任务组中使用所述至少一种类型的所述目标系统资源的数量之和最多的至少一个任务组确定为目标任务组。
可选的,确定所述至少一个目标任务组中的任一目标任务组对应的服务类别,包括:
针对所述至少一个目标任务组中的任一目标任务组,采集该目标任务组所使用的系统资源的数量;
将该目标任务组所使用的系统资源的数量输入预训练的服务类别识别模型,以确定该目标任务组对应的服务类别。
可选的,所述待检测任务组包括待检测进程组或待检测线程组。
可选的,所述系统资源可以包括CPU处理资源,内存资源,IO资源,网络资源。
本申请还提供一种性能调优装置,所述装置包括:
任务组获取单元,用于获取运行在计算设备上待检测任务组,确定所述待检测任务组中是否包含目标服务所占用的任务组;
目标任务组确定单元,用于如果所述待检测任务组中不包含目标服务所占用的任务组,基于所述待检测任务组中各个任务组所使用的系统资源的数量,从所述待检测任务组中确定至少一个目标任务组;其中,所述至少一个目标任务组所使用的至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值;
阈值检测单元,用于确定所述至少一个目标任务组中的任一目标任务组对应的服务类别,并进一步确定该目标任务组所使用的所述目标系统资源是否达到与所述服务类别对应的第二阈值;
性能调优单元,用于如果所述至少一个目标任务组中的任一目标任务组所使用的所述目标系统资源达到与所述服务类别对应的第二阈值,基于所述目标系统资源对应的调优策略,针对该目标任务组进行性能调优。
本申请还提供一种性能调优系统,所述性能调优系统执行实现上述方法。
本申请还提供一种电子设备,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行上述的方法。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现上述方法。
在以上实施例记载的方案中,确定待检测任务组中是否包含目标服务所占用的任务组,如果不包含目标服务所占用的任务组,说明未知服务所占用的任务组使用了较多的系统资源。进一步确定至少一个目标任务组所使用的至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值,以此确定了哪些任务组使用了较多的系统资源,也通过第一阈值确定了哪种类型的系统资源是处在高负载的系统资源。
在针对未知的服务进行性能调优时,分别确定未知服务对应的服务类别,并确定该服务所占用的任务组使用的系统资源是否超过与服务类别对应的第二阈值,由此可以提高了针对未知服务进行性能调优的准确性。
附图说明
图1是一示例性的实施例示出的一种性能调优方法的架构示意图。
图2是一示例性的实施例示出的一种性能调优方法的流程图。
图3是一示例性的实施例示出的一种性能调优方法的示意图。
图4是一示例性的实施例示出的一种性能调优装置所在电子设备的硬件结构图。
图5是一示例性的实施例示出的一种性能调优装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
在性能调优领域中,针对计算设备搭载的操作系统在运行各项服务进行调优,主要有两种方法,一种是针对服务本身进行调优,一种是针对服务所使用的系统资源进行调优。
针对服务本身进行调优,通常是直接采集服务使用的系统资源,确定该服务使用的系统资源是否达到预设的阈值,如果达到阈值就进行调优。
而这种方法通常需要识别到服务所使用的进程组或线程组,针对未知的服务,识别不了该服务所使用的进程组或线程组,则无法针对服务本身进行调优。
同时,每种服务使用的系统资源是不同的,不同场景下系统资源的阈值也是不同的。例如,云数据库场景下,CPU使用率达到40%就是高负载;云原生函数计算场景下,CPU使用率达到90%才能算是高负载。由此,不同场景下的阈值需要人工来先确定,导致是否有效果依赖于人工经验。
除此之外,针对服务本身进行调优,需要频繁的采集该服务所使用的系统资源的数据。而服务本身在运行中,其使用的系统资源达到高负载的速度可能是非常快的,因此可能需要频繁的采集数据,而采集数据也会消耗系统资源,因此可能对性能产生负面影响。
针对服务所使用的系统资源进行调优,通常是预先采集各类服务所使用的系统资源在高负载情况下的数据,并建立训练集,针对训练集进行建模。该模型通过可以根据不同类别的系统资源,以及该系统资源是否为高负载,将服务分成多个种类。当需要针对服务进行调优时,采集服务所使用的系统资源的数据,输入所述模型中确定服务属于哪一类,并根据该服务对应的类别,找到与该类别对应的调优方式。
而这种方法难以区分系统资源是否只是服务在使用,在实际应用中操作系统本身,操作系统提供的各项系统也在使用系统资源。
同时,模型训练需要的数据量巨大,无论使用聚类算法还是分类算法,均需要使用大量的数据,模型训练的时间较长,且一旦新增未知服务,就需要增加数据采集,重新训练模型。
图1是一示例性实施例提供的一种性能调优方法的架构示意图。如图1所示,该系统可以包括网络10、服务器11、若干客户端,如台式电脑12,笔记本电脑13,手机14等。
服务器11可以为包含一独立主机的物理服务器,或者该服务器11可以为主机集群承载的虚拟服务器、云服务器等。手机12-14只是用户可以使用的一种类型的电子设备。实际上,用户显然还可以使用诸如下述类型的电子设备:平板设备、笔记本电脑、掌上电脑(PDAs,PersonalDigitalAssistants)、可穿戴设备(如智能眼镜、智能手表等)等,本说明书一个或多个实施例并不对此进行限制。网络10可以包括多种类型的有线或无线网络。
在一实施例中,服务器11可以与手机12-14进行配合;其中,可由手机12-14获取待检测任务组,并通过网络10上传至服务器11,然后由服务器11基于本说明书的性能调优方法获取调优方案,并发送至手机12-14进行调优。在另一实施例中,手机12-14可以独立实现本说明书的性能调优方法;其中,由手机12-14获取待检测任务组,并基于本说明书的性能调优方法进行调优。
下面结合附图对本说明书的性能调优方案进行详细说明。
图2是一示例性实施例提供的一种性能调优方法的流程图。如图2所示,该方法可以包括以下步骤:
步骤202,获取运行在计算设备上待检测任务组,确定所述待检测任务组中是否包含目标服务所占用的任务组。
在本说明书中,待检测任务组可以是计算设备上搭载的操作系统进行资源分配基本单位的组合;也可以是计算设备上搭载的操作系统进行任务调度的基本单位的组合,在本说明书中不做具体限定。
在实际应用中,所述任务组通常可以是计算设备上搭载的操作系统上的一组进程或一组线程。也即,任务组通常可以是进程组或线程组。
获取运行在计算设备上的待检测任务组的具体方式,在本说明书中不做具体限定。例如,可以响应于用户的性能优化操作,从计算设备上搭载的操作系统提供的任务组列表中获取至少一个任务组作为待检测任务组,也可以由用户通过计算设备搭载的操作系统中提供的性能优化界面中选择至少一个任务组,并自动获取用户选择的至少一个任务组作为待检测任务组。
在本说明书中,待检测任务组通过可以由多个任务组构成。通常,计算设备搭载的操作系统中提供的每一项服务均可以由一个或多个任务组所组成。因此,在获取所述待检测任务组后,可以确定所述待检测任务组中是否包含目标服务所占用的任务组。
其中,所述目标服务可以为计算设备搭载的操作系统中已知的某一项服务,例如数据库服务,函数计算服务等等。所述操作系统可以获取目标服务对应的任务组标识,并存储目标服务,以及目标服务所占用的任务组的对应关系。所述操作系统可以基于所述对应关系确定所述待检测任务组中是否包含目标服务所占用的任务组。
例如,所述操作系统可以存储该任务组对应的任务组标识,以及服务标识的对应关系。可以基于所述待检测任务组中的各个任务组标识,确定所述待检测任务组是否包含目标服务所占用的任务组。
在一种实施方式中,所述操作系统可以存储与所述目标服务对应的第一任务组列表。所述第一任务组列表包括所述目标服务所占用的至少一个任务组。
所述操作系统可以将待检测任务组与预设的与所述目标服务对应的第一任务组列表进行匹配,并根据匹配结果确定所述待检测任务中是否包含所述目标服务所占用的任务组。
在实际应用中,所述第一任务组列表可以以白名单的形式存储在所述操作系统,在进行性能调优时,将所述待检测任务组与白名单进行匹配,也即与第一任务组列表进行匹配,并确定所述待检测任务组中是否包含所述目标服务所占用的任务组。
在一种实施方式中,如果所述待检测任务组中包含所述目标服务所占用的任务组,可以基于与所述目标服务对应的调优策略针对该任务组进行性能调优。
由于所述目标服务为操作系统已知的某项服务,那么当所述待检测任务组中包含目标服务所占用的任务组,可以基于与所述目标服务对应的调优策略针对该任务组进行调优。
其中,所述与目标服务对应的调优策略,在本说明书中不作具体限定。针对不同的目标服务,其对应的调优策略也不同。例如,针对数据库服务,可能需要尽可能的针对内存资源进行优化;针对函数计算服务,可能需要尽可能的针对CPU处理资源进行优化。用户可以根据实际需要,针对不同的目标服务设定不同的调优策略,并在识别到与目标服务对应的任务组后,根据已有的调优策略进行调优。
在实际应用中,所述操作系统还可以将针对每一种已知服务的调优策略存储在调优策略数据库中,并在识别到与目标服务对应的任务组后,从所述调优策略数据库中调用相应的调优策略。
步骤204,如果所述待检测任务组中不包含目标服务所占用的任务组,基于所述待检测任务组中各个任务组所使用的系统资源的数量,从所述待检测任务组中确定至少一个目标任务组;其中,所述至少一个目标任务组所使用的至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值。
如果所述待检测任务组中不包含目标服务所占用的任务组,说明所述待检测任务组中包含若干个未知服务所占用的任务组,而针对未知服务所占用的任务组,无法使用针对已知服务的调优策略进行调优,由此可以从未知服务所占用的任务组使用的系统资源的进行调优。
在本说明书中,可以基于所述待检测任务组中各个任务组所使用的系统资源的数量,确定至少一个目标任务组。其中,所述至少一个目标任务组所使用的至少一种类型的目标系统资源的数量之和达到预设的与该类型的目标系统资源对应的第一阈值。
其中,所述系统资源通常可以包括CPU处理资源,内存资源,IO资源,网络资源等等。
所述第一阈值可以基于不同的应用场景以及不同种类的系统资源进行设定。例如,在云数据库场景下,所述第一阈值可以为CPU使用率达到40%。
在本说明书中,可以确定若干个任务组使用的至少一种类型的目标系统资源的数量之和是否达到第一阈值,并将若干个任务组确定为目标任务组。
例如,当某一任务组使用CPU处理资源达到第一阈值时,可以将该任务组作为目标任务。又例如,当某两个任务组使用CPU处理资源之和达到第一阈值时,可以将这两个任务组确定为目标任务组。
在一种实施方式中,如果所述待检测任务组中不包含目标服务所占用的任务组,且所述待检测任务组中不存在使用的所述至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值的任务组,则将所述待检测任务组中使用所述至少一种类型的所述目标系统资源的数量之和最多的至少一个任务组确定为目标任务组。
例如,当待检测任务组中不存在一个或多个任务组使用的CPU处理资源之和达到预设的第一阈值时。可以从所述待检测任务组中选择至少一个或多个使用的CPU处理资源最多的任务组作为目标任务组。
在本说明书中,当所述待检测任务组中不存在至少一个任务组所使用的至少一种类型的目标系统资源的数量之和达到预设的与该类型的目标系统资源对应的第一阈值时,可以根据操作系统的性能,选择预设数量的任务组确定为目标任务组。其中,所述预设数量的任务组使用至少一种类型的所述目标系统资源的数量之和最多。例如,在实际应用中,所述预设数量可以为10,可以从所述待检测任务组选择10组任务组作为目标任务组。
在一种实施方式中,在基于所述待检测任务组中各个任务组所使用的系统资源的数量,从所述待检测任务组中确定至少一个任务组之前,还可以从所述待检测任务组中删除系统服务所占用的任务组。
所述操作系统可以存储与所述操作系统中的系统服务对应的第二任务组列表。所述第二任务组列表可以包括所述第二任务组列表包括所述计算设备搭载的操作系统中的系统服务所占用的至少一个任务组。
所述操作系统可以将所述待检测任务组与预设的与系统服务对应的第二任务组列表进行匹配,并根据匹配结果确定所述待检测任务组中是否包含所述计算设备搭载的操作系统中的系统服务所占用的任务组,并从所述待检测任务组中删除确定出的所述计算设备搭载的操作系统中的系统服务所占用的任务组。
在实际应用中,所述第二任务组列表可以以黑名单的形式存储在所述操作系统中,在进行性能调优时,将所述待检测任务组与黑名单进行匹配,也即与第二任务组列表进行匹配,并确定所述待检测任务组中是否与系统服务所占用的任务组。如果所述待检测任务组中包含与系统服务所占用的任务组,那么可以删除这些系统服务所占用的任务组。
通过删除待检测任务组中与系统服务相关的任务组,在后续确定待检测任务组中是否存在至少一个目标任务组所使用的至少一种类型的目标系统资源的数量之和达到预设的与该类型的目标系统资源对应的第一阈值时,可以避免系统服务所占用的任务组影响检测结果,由此只识别出未知的服务所占用的任务组所使用的系统资源,提高后续针对未知服务进行性能调优的准确性。
步骤206,确定所述至少一个目标任务组中的任一目标任务组对应的服务类别,并进一步确定该目标任务组所使用的所述目标系统资源是否达到与所述服务类别对应的第二阈值。
在本说明书中,确定所述至少一个目标任务组后,可以分别确定目标任务组中的每一任务组对应的服务类别。其中,所述服务类别用于指示所述任务组为哪一种类型的服务。具体的服务类别可以基于操作系统的实际使用场景进行预先设定,在本说明书中不做具体限定。由于所述目标任务组为未知服务对应的任务组,因此需要进一步确定未知服务所属的服务类别,并进一步确定是否需要针对该任务组进行性能调优。
确定目标任务组中的任务组对应的服务类别的具体方式,在本说明书中不做具体限定。例如,可以基于任务组当前使用的系统资源,基于使用的哪几种系统资源确定该任务组对应的服务类别。比如,当前任务组使用大量的内存资源以及IO资源,说明该任务组对应的服务可能与数据库服务有关。也可以基于该任务组对应的父任务组,确定该任务组对应的父任务组属于哪项服务,并进一步确定该服务对应的服务类别。
在一种实施方式中,可以针对所述至少一个目标任务组中的任一目标任务组,并采集该目标任务组所使用的系统资源的数量;将该目标任务组所使用的系统资源的数量输入预训练的服务类别识别模型,以确定该目标任务组对应的服务类别。
在本说明书中,所述服务类别识别模型可以用于识别所述任务组具体属于哪种服务类别。在训练所述服务类别识别模型时,可以选择各种服务对应的任务组在一定周期内的使用的系统资源的数据,并将所述数据作为训练样本输入机器学习模型进行训练。例如,在数据库场景下,数据库服务对应的任务组在短时间内使用大量的内存资源以及IO资源;又例如,在函数计算场景下,函数计算任务组在短时间内使用大量的CPU处理资源。其中,所述训练使用的机器学习模型,可以参考相关技术,在本说明书中不再赘述。
在确定所述至少一个目标任务组中任一目标任务组的服务类别后,可以进一步确定所述目标任务组所使用的所述目标系统资源是否达到预设的与所述服务类别对应的第二阈值。
在本说明书中,可以针对每种服务类别,预先设定针对不同系统资源的第二阈值。例如,服务类别为云数据库类别,CPU使用率达到40%就是高负载,可以将针对CPU处理资源的第二阈值设定为40%。又例如,服务类别为云原生函数计算类别,CPU使用率达到90%才能算是高负载,可以将针对CPU处理资源的第二阈值设定为90%。
以上实施例中,可以针对所述至少一个目标任务组中的任一目标任务组,并采集该目标任务组所使用的系统资源的数量,仅需要采集少量的系统资源,即可以确定所述任务组对应的服务类别,并可以进一步基于所述服务类别进行性能调优,可以大大提高针对未知服务进行性能调优的效率。
步骤208,如果所述至少一个目标任务组中的任一目标任务组所使用的所述目标系统资源达到第二阈值,基于所述目标系统资源对应的调优策略,针对该目标任务组进行性能调优。
在本说明书中,如果所述至少一个目标任务组中的任一目标任务组所使用的所述目标系统资源达到第二阈值,可以基于所述目标系统资源对应的调优策略,针对该目标任务组进行性能调优。
例如,所述至少一个目标任务组中某个任务组所对应的服务为云数据库服务类别,而该任务组对应的CPU使用率为50%,可以认为该任务组所使用的CPU处理资源达到第二阈值,因此可以基于与CPU处理资源对应的调优策略,针对该任务组进行调优。
在本说明书中,所述与目标系统资源对应的的调优策略,在本说明书中不作具体限定。针对不同的系统资源,其对应的调优策略也不同。在实际应用中,所述操作系统可以针对不同的系统资源,从所述调优策略数据库中调用相应的调优策略。
下面以一个具体的实施例,详细阐述上述性能调优过程。
图3是一示例性实施例提供的一种性能调优方法的示意图。如图3所示,所述示意图可以包括以下几个步骤:
步骤302,输入待检测任务组。其中,所述待检测任务组可以包括若干进程组或线程组的组合。用户可以通过计算设备搭载的操作系统中提供的性能优化界面中选择至少一个任务组作为输入,也可以由计算设备搭载的操作系统中响应于用户的性能优化操作,自动选择至少一个任务组作为输入。
步骤304,将待检测任务组与第一任务组列表进行匹配,确定待检测任务组中是否包含所述目标服务所占用的任务组。其中,所述第一任务组列表包含目标服务所占用的至少一个任务组,也即目标服务白名单。通过将待检测任务组与目标服务白名单进行匹配,可以确定待检测任务组中是否包含目标服务所占用的任务组。
步骤306,如果待检测任务组中包含目标服务所占用的任务组,那么可以直接调用与该目标服务对应的调优策略,针对该任务组进行调优。
步骤308,如果待检测任务组中不包含目标服务所占用的任务组,那么可以将待检测任务组与第二任务组列表进行匹配,确定待检测任务组中是否包含所述系统服务所占用的任务组。其中,所述第二任务组列表包含系统服务所占用的至少一个任务组,也即系统服务黑名单。通过将待检测任务组与系统服务黑名单进行匹配,确定待检测任务组中是否包含系统所占用的任务组。
步骤310,如果待检测任务组中包含系统服务所占用的任务组,那么可以删除确定出的系统服务所占用的任务组。
步骤312,删除待检测任务组后中系统服务所占用的任务组后,可以确定待检测任务组中各个任务组所使用的系统资源的数量。
步骤314,如果待检测任务组中不包含系统服务所占用的任务组,那么直接基于待检测任务组中各个任务组所使用的系统资源的数量,确定至少一个目标任务组。如果待检测任务组中包含系统服务所占用的任务组,那么先删除系统服务所占用的任务,基于删除待检测任务组后中系统服务所占用的任务组后,各个任务组所使用的系统资源的数量,确定至少一个目标任务组。
其中,所述至少一个目标任务组的确定策略可以包括是否存在至少一个任务组所使用的至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值。如果存在,则将至少一个任务组确定为目标任务组。如果不存在,将待检测任务组中使用所述至少一种类型的所述目标系统资源的数量之和最多的至少一个任务组确定为目标任务组。
步骤316,针对至少一个目标任务组中任一任务组,如果所述至少一个目标任务组中的任一目标任务组所使用的所述目标系统资源达到与所述服务类别对应的第二阈值,基于所述目标系统资源对应的调优策略,针对该目标任务组进行性能调优。
在以上实施例记载的方案中,确定待检测任务组中是否包含目标服务所占用的任务组,如果不包含目标服务所占用的任务组,说明未知服务所占用的任务组使用了较多的系统资源。进一步确定至少一个目标任务组所使用的至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值,以此确定了哪些任务组使用了较多的系统资源,也通过第一阈值确定了哪种类型的系统资源是处在高负载的系统资源。
在针对未知的服务进行性能调优时,分别确定未知服务对应的服务类别,并确定该服务所占用的任务组使用的系统资源是否超过与服务类别对应的第二阈值,由此可以提高了针对未知服务进行性能调优的准确性。
与上述性能调优方法的实施例对应的,本说明书还提供了性能调优装置的实施例。
请参见图4,图4是一示例性的实施例示出的一种性能调优装置所在电子设备的硬件结构图。在硬件层面,该设备包括处理器402、内部总线404、网络接口406、内存408以及非易失性存储器410,当然还可能包括其他所需要的硬件。本说明书一个或多个实施例可以基于软件方式来实现,比如由处理器402从非易失性存储器410中读取对应的计算机程序到内存408中然后运行。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参见图5,图5是一示例性的实施例示出的一种性能调优装置的框图。性能调优装置可以应用于图4所示的电子设备中,以实现本说明书的技术方案。其中,上述性能调优装置可以包括:
任务组获取单元502,用于获取运行在计算设备上待检测任务组,确定所述待检测任务组中是否包含目标服务所占用的任务组;
目标任务组确定单元504,用于如果所述待检测任务组中不包含目标服务所占用的任务组,基于所述待检测任务组中各个任务组所使用的系统资源的数量,从所述待检测任务组中确定至少一个目标任务组;其中,所述至少一个目标任务组所使用的至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值;
阈值检测单元506,用于确定所述至少一个目标任务组中的任一目标任务组对应的服务类别,并进一步确定该目标任务组所使用的所述目标系统资源是否达到与所述服务类别对应的第二阈值;
性能调优单元508,用于如果所述至少一个目标任务组中的任一目标任务组所使用的所述目标系统资源达到与所述服务类别对应的第二阈值,基于所述目标系统资源对应的调优策略,针对该目标任务组进行性能调优。
在本实施例中,所述装置还包括:
已知服务性能调优单元,用于如果所述待检测任务组中包含所述目标服务所占用的任务组,则基于与所述目标服务对应的调优策略针对该任务组进行性能调优。
在本实施例中,所述装置还包括:
第一任务组列表匹配单元,用于将所述待检测任务组与预设的与所述目标服务对应的第一任务组列表进行匹配;其中,所述第一任务组列表包括所述目标服务所占用的至少一个任务组;
根据匹配结果确定所述待检测任务组中是否包含所述目标服务所占用的任务组。
在本实施例中,所述装置还包括:
第二任务组列表匹配单元,用于将所述待检测任务组与预设的与系统服务对应的第二任务组列表进行匹配;其中,所述第二任务组列表包括所述计算设备搭载的操作系统中的系统服务所占用的至少一个任务组;
根据匹配结果确定所述待检测任务组中包含的所述系统服务所占用的任务组,并从所述待检测任务组中删除确定出的所述计算设备搭载的操作系统中的系统服务所占用的任务组。
在本实施例中,所述装置还包括:
目标任务组确定单元,用于如果所述待检测任务组中不包含目标服务所占用的任务组,且所述待检测任务组中不存在使用的所述至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值的任务组,则将所述待检测任务组中使用所述至少一种类型的所述目标系统资源的数量之和最多的至少一个任务组确定为目标任务组。
在本实施例中,所述阈值检测单元进一步用于针对所述至少一个目标任务组中的任一目标任务组,采集该目标任务组所使用的系统资源的数量;
将该目标任务组所使用的系统资源的数量输入预训练的服务类别识别模型,以确定该目标任务组对应的服务类别。
在本实施例中,所述待检测任务组包括待检测进程组或待检测线程组。
在本实施例中,所述系统资源可以包括CPU处理资源,内存资源,IO资源,网络资源。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例只是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
与上述性能调优方法的实施例对应的,本说明书还提供了性能调优系统的实施例。
其中,上述性能调优系统可以包括:
任务组获取子系统,用于获取运行在计算设备上待检测任务组,确定所述待检测任务组中是否包含目标服务所占用的任务组;
目标任务组确定子系统,用于如果所述待检测任务组中不包含目标服务所占用的任务组,基于所述待检测任务组中各个任务组所使用的系统资源的数量,从所述待检测任务组中确定至少一个目标任务组;其中,所述至少一个目标任务组所使用的至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值;
阈值检测子系统,用于确定所述至少一个目标任务组中的任一目标任务组对应的服务类别,并进一步确定该目标任务组所使用的所述目标系统资源是否达到与所述服务类别对应的第二阈值;
性能调优子系统,用于如果所述至少一个目标任务组中的任一目标任务组所使用的所述目标系统资源达到与所述服务类别对应的第二阈值,基于所述目标系统资源对应的调优策略,针对该目标任务组进行性能调优。
上述系统中各个子系统的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于系统实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的系统实施例只是示意性的,其中所述作为分离部件说明的子系统可以是或者也可以不是物理上分开的,作为子系统显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。本说明书还提供了一种计算机可读存储介质的实施例。所述计算机可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,可以实现本说明书中任意一个实施例提供的所述性能调优方法。
本说明书实施例提供的计算机可读存储介质具体可以包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-OnlyMemory,只读存储器)、RAM(RandomAccessMemory,随机存储器)、EPROM(ErasableProgrammableRead-OnlyMemory,可擦写可编程只读存储器)、EEPROM(ElectricallyErasableProgrammableRead-OnlyMemory,电可擦可编程只读存储器)、闪存、磁性卡片或光纤卡片。也就是,可读存储介质包括可以存储或传输信息的可读介质。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
在一个典型的配置中,计算机包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
Claims (10)
1.一种性能调优方法,所述方法包括:
获取运行在计算设备上待检测任务组,确定所述待检测任务组中是否包含目标服务所占用的任务组;
如果所述待检测任务组中不包含目标服务所占用的任务组,基于所述待检测任务组中各个任务组所使用的系统资源的数量,从所述待检测任务组中确定至少一个目标任务组;其中,所述至少一个目标任务组所使用的至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值;
确定所述至少一个目标任务组中的任一目标任务组对应的服务类别,并进一步确定该目标任务组所使用的所述目标系统资源是否达到与所述服务类别对应的第二阈值;如果所述至少一个目标任务组中的任一目标任务组所使用的所述目标系统资源达到与所述服务类别对应的第二阈值,基于所述目标系统资源对应的调优策略,针对该目标任务组进行性能调优。
2.根据权利要求1所述的方法,所述方法还包括:
如果所述待检测任务组中包含所述目标服务所占用的任务组,则基于与所述目标服务对应的调优策略针对该任务组进行性能调优。
3.根据权利要求2所述的方法,所述方法还包括:
将所述待检测任务组与预设的与所述目标服务对应的第一任务组列表进行匹配;其中,所述第一任务组列表包括所述目标服务所占用的至少一个任务组;
根据匹配结果确定所述待检测任务组中是否包含所述目标服务所占用的任务组。
4.根据权利要求1所述的方法,所述基于所述待检测任务组中各个任务组所使用的系统资源的数量,从所述待检测任务组中确定至少一个目标任务组之前,所述方法还包括:
将所述待检测任务组与预设的与系统服务对应的第二任务组列表进行匹配;其中,所述第二任务组列表包括所述计算设备搭载的操作系统中的系统服务所占用的至少一个任务组;
根据匹配结果确定所述待检测任务组中包含的所述系统服务所占用的任务组,并从所述待检测任务组中删除确定出的所述计算设备搭载的操作系统中的系统服务所占用的任务组。
5.根据权利要求1所述的方法,所述方法还包括:
如果所述待检测任务组中不包含目标服务所占用的任务组,且所述待检测任务组中不存在使用的所述至少一种类型的目标系统资源的数量之和达到与该类型的目标系统资源对应的第一阈值的任务组,则将所述待检测任务组中使用所述至少一种类型的所述目标系统资源的数量之和最多的至少一个任务组确定为目标任务组。
6.根据权利要求1所述的方法,确定所述至少一个目标任务组中的任一目标任务组对应的服务类别,包括:
针对所述至少一个目标任务组中的任一目标任务组,采集该目标任务组所使用的系统资源的数量;
将该目标任务组所使用的系统资源的数量输入预训练的服务类别识别模型,以确定该目标任务组对应的服务类别。
7.根据权利要求1所述的方法,所述待检测任务组包括待检测进程组或待检测线程组。
8.一种性能调优系统,所述性能调优系统执行如权利要求1-7中的任一所述的方法。
9.一种电子设备,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310362927.9A CN116107761B (zh) | 2023-04-04 | 2023-04-04 | 性能调优方法、系统、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310362927.9A CN116107761B (zh) | 2023-04-04 | 2023-04-04 | 性能调优方法、系统、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116107761A CN116107761A (zh) | 2023-05-12 |
CN116107761B true CN116107761B (zh) | 2023-08-22 |
Family
ID=86261898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310362927.9A Active CN116107761B (zh) | 2023-04-04 | 2023-04-04 | 性能调优方法、系统、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116107761B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109976901A (zh) * | 2017-12-28 | 2019-07-05 | 航天信息股份有限公司 | 一种资源调度方法、装置、服务器及可读存储介质 |
CN111694646A (zh) * | 2020-05-29 | 2020-09-22 | 北京百度网讯科技有限公司 | 资源调度方法、装置、电子设备及计算机可读存储介质 |
CN113419825A (zh) * | 2021-04-01 | 2021-09-21 | 阿里巴巴新加坡控股有限公司 | 资源性能预估方法和装置、系统、电子设备及计算机可读存储介质 |
CN114461384A (zh) * | 2021-12-28 | 2022-05-10 | 浙江大华技术股份有限公司 | 任务执行方法、装置、计算机设备和存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109144715B (zh) * | 2017-06-27 | 2022-04-19 | 阿里巴巴集团控股有限公司 | 一种资源优化与更新的方法、服务器及设备 |
US20220413941A1 (en) * | 2021-06-29 | 2022-12-29 | Hewlett-Packard Development Company, L.P. | Computing clusters |
-
2023
- 2023-04-04 CN CN202310362927.9A patent/CN116107761B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109976901A (zh) * | 2017-12-28 | 2019-07-05 | 航天信息股份有限公司 | 一种资源调度方法、装置、服务器及可读存储介质 |
CN111694646A (zh) * | 2020-05-29 | 2020-09-22 | 北京百度网讯科技有限公司 | 资源调度方法、装置、电子设备及计算机可读存储介质 |
CN113419825A (zh) * | 2021-04-01 | 2021-09-21 | 阿里巴巴新加坡控股有限公司 | 资源性能预估方法和装置、系统、电子设备及计算机可读存储介质 |
CN114461384A (zh) * | 2021-12-28 | 2022-05-10 | 浙江大华技术股份有限公司 | 任务执行方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116107761A (zh) | 2023-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109948641B (zh) | 异常群体识别方法及装置 | |
CN106407207B (zh) | 一种实时新增数据更新方法和装置 | |
CN110874440A (zh) | 一种信息推送及其模型训练的方法、装置及电子设备 | |
US20180060180A1 (en) | Systems and Processes For Data Backup And Recovery | |
US20170149690A1 (en) | Resource Aware Classification System | |
CN112737798B (zh) | 主机资源分配方法、装置及调度服务器、存储介质 | |
CN111767419B (zh) | 图片搜索方法、装置、设备及计算机可读存储介质 | |
CN115712866A (zh) | 数据处理方法、装置及设备 | |
CN117271100B (zh) | 算法芯片集群调度方法、装置、计算机设备和存储介质 | |
CN113674152A (zh) | 图像处理方法、装置、电子设备和计算机可读存储介质 | |
CN112650449A (zh) | 缓存空间的释放方法、释放系统、电子设备及存储介质 | |
CN116107761B (zh) | 性能调优方法、系统、电子设备及可读存储介质 | |
CN115442262B (zh) | 一种资源评估方法、装置、电子设备及存储介质 | |
CN117009069A (zh) | 虚拟云计算资源的调度方法及装置 | |
CN113296951B (zh) | 一种资源配置方案确定方法及设备 | |
CN115994029A (zh) | 容器资源调度方法及装置 | |
CN115470190A (zh) | 一种多存储池数据分类存储方法、系统与电子设备 | |
CN114090535A (zh) | 一种模型训练方法、数据存储方法、装置及电子设备 | |
CN114691612A (zh) | 数据写入方法及装置、数据读取方法及装置 | |
CN114138444A (zh) | 一种任务调度方法、装置、设备、存储介质及程序产品 | |
CN111598390B (zh) | 服务器高可用性评估方法、装置、设备和可读存储介质 | |
CN109597851B (zh) | 基于关联关系的特征提取方法和装置 | |
CN113656046A (zh) | 一种应用部署方法和装置 | |
CN113626650A (zh) | 业务处理方法、装置和电子设备 | |
CN111290850A (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 |