System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机操作系统,尤其涉及一种进程资源控制方法、终端设备以及存储介质。
技术介绍
1、根据进程的自身质量和所承载的业务负载,进程在运行时可能会对系统的各种资源产生消耗,例如对cpu使用率、内存使用量、打开文件数、磁盘和网络io的读写速率等造成影响。这些资源消耗可能会对操作系统和其他进程的运行产生负面影响,甚至导致系统崩溃。因此,进程的资源消耗情况正逐渐成为业内关注的重点。
2、目前不同操作系统以及同一操作系统的不同版本对于进程运行时资源进行限制提供的资源对象和资源对象的核心操作不同,以windows操作系统和linux操作系统为例,windows操作系统提供job object对象用于对进程运行时资源进行限制,linux操作系统提供control group对象对进程运行时资源进行限制,但两个不同操作系统的对象之间的模型、接口和机制存在较大的差异,另一方面,windows高低版本的操作系统之间,job object的模型在使用层面还存在不同,而linux上高低版本的操作系统之间,存在cgroup v1和cgorup v2两个模型差距较大的版本,这些就导致无论是在同类操作系统的高低版本间,还是不同的操作系统间,要进行一种通用的进程运行时资源限制,都是非常困难的,没有现成的统一的接口和模型。
3、目前行业内一般是基于不同的操作系统,使用其提供的对象对进程执行资源限制操作,由于不同操作系统提供的资源限制机制不同,开发人员需要针对不同的操作系统或者同一操作系统的不同版本编写不同的代码,提升了开发和维护
技术实现思路
1、本专利技术的主要目的在于提供一种进程资源控制方法、终端设备以及存储介质,旨在解决目前开发人员需要针对不同的操作系统或者同一操作系统的不同版本编写不同的代码来执行进程资源控制的操作,提升了开发和维护的难度的问题。
2、为实现上述目的,本专利技术提供一种进程资源控制方法,所述方法包括:
3、基于目标操作系统对应的资源对象和各所述资源对象的核心操作,定义资源组操作接口;
4、通过所述资源组操作接口对预先构建的资源树进行异常事件检测,所述资源树由资源组构成;
5、当检测到异常事件发生时,销毁异常事件所发生的资源组的对象。
6、可选地,所述通过所述事件通知接口对预先创建的资源树进行异常事件检测的步骤之前包括:
7、通过所述资源组操作接口构建资源树。
8、可选地,所述资源组操作接口包括事件通知接口、环境管理接口、资源组管理接口、策略设置接口、进程管理接口,所述通过所述资源组操作接口对预先构建的资源树进行异常事件检测的步骤包括:
9、通过所述事件通知接口对预先构建的资源树进行异常事件检测;
10、所述通过所述资源组操作接口构建资源树的步骤包括:
11、通过所述环境管理接口初始化资源组模块;
12、通过所述资源组管理接口,基于所述资源组模块创建资源树;
13、通过所述策略设置接口对创建的资源树设置资源限制策略;
14、通过所述进程管理接口将进程与已设置资源限制策略的资源树进行关联,以完成所述资源树的构建。
15、可选地,所述通过所述资源组管理接口,基于所述资源组模块创建资源树的步骤包括:
16、通过所述资源组管理接口,基于所述资源组模块创建叶子资源组;
17、查询所述资源树中是否存在资源组;
18、若存在,则在已存在的资源组中指定父资源组;
19、将所述叶子资源组挂载于所述父资源组下,更新所述资源树;
20、若不存在,则将所述叶子资源组作为所述资源树。
21、可选地,所述通过所述策略设置接口对创建的资源树设置资源限制策略的步骤包括:
22、通过所述策略设置接口对所述资源树中的叶子资源组设置所述资源限制策略,得到第一叶子资源组。
23、可选地,所述通过所述进程管理接口将进程与已设置资源限制策略的资源树进行关联,以完成所述资源树的构建的步骤包括:
24、通过所述进程管理接口将所述进程与所述第一叶子资源组进行关联,得到第二叶子资源组。
25、可选地,所述通过所述事件通知接口对预先构建的资源树进行异常事件检测的步骤包括:
26、对所述第二叶子资源组设置事件通知回调函数,得到第三叶子资源组,其中,所述事件通知回调函数包含触发所述事件通知回调函数的异常事件参数。
27、可选地,所述异常事件包括:资源组的进程自行结束、资源组的进程的虚拟内存的用量总和达到或超过了预设上限、资源组的进程数量超过了预设的进程数量上限、资源组的进程被强制中止、未定义的异常事件。
28、可选地,所述通过所述事件通知接口对预先构建的资源树进行异常事件检测的步骤包括:
29、将所述第三叶子资源组加入到观测集中;
30、对所述观测集中的各所述第三叶子资源组进行轮询;
31、所述当检测到异常事件发生时,销毁异常事件所发生的资源组的对象的步骤包括:
32、若在轮询过程中检测到所述观测集中的第三叶子资源组发生所述异常事件,则触发所述事件通知回调函数向用户通报所述异常事件;
33、销毁所述观测集中的第三叶子资源组的对象。
34、本专利技术实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的进程资源控制程序,所述进程资源控制程序被所述处理器执行时实现如上所述的进程资源控制方法。
35、本专利技术实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有进程资源控制程序,所述进程资源控制程序被处理器执行时实现如上所述的进程资源控制方法。
36、本专利技术实施例提出的进程资源控制方法、终端设备以及存储介质,基于目标操作系统对应的资源对象和各所述资源对象的核心操作,定义资源组操作接口;通过所述资源组操作接口对预先构建的资源树进行异常事件检测,所述资源树由资源组构成;当检测到异常事件发生时,销毁异常事件所发生的资源组的对象。本专利技术实施例基于目标操作系统对应的资源对象和各所述资源对象的核心操作抽象得到资源组操作接口,通过调用资源组操作接口执行进程资源控制的操作,从而不需要针对不同的操作系统或者同一操作系统的不同版本编写不同的代码,降低了开发和维护的难度。
本文档来自技高网...【技术保护点】
1.一种进程资源控制方法,其特征在于,所述方法包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,所述通过所述事件通知接口对预先创建的资源树进行异常事件检测的步骤之前包括:
3.根据权利要求2所述的方法,其特征在于,所述资源组操作接口包括事件通知接口、环境管理接口、资源组管理接口、策略设置接口、进程管理接口,所述通过所述资源组操作接口对预先构建的资源树进行异常事件检测的步骤包括:
4.根据权利要求3所述的方法,其特征在于,所述通过所述资源组管理接口,基于所述资源组模块创建资源树的步骤包括:
5.根据权利要求4所述的方法,其特征在于,所述通过所述策略设置接口对创建的资源树设置资源限制策略的步骤包括:
6.根据权利要求5所述的方法,其特征在于,所述通过所述进程管理接口将进程与已设置资源限制策略的资源树进行关联,以完成所述资源树的构建的步骤包括:
7.根据权利要求6所述的方法,其特征在于,所述通过所述事件通知接口对预先构建的资源树进行异常事件检测的步骤包括:
8.根据权利要求1-7中任一权利要求所
9.根据权利要求7所述的方法,其特征在于,所述通过所述事件通知接口对预先构建的资源树进行异常事件检测的步骤包括:
10.一种进程资源控制终端设备,其特征在于,所述进程资源控制终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-9中任一项所述的进程资源控制方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-9中任一项所述的进程资源控制方法。
...【技术特征摘要】
1.一种进程资源控制方法,其特征在于,所述方法包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,所述通过所述事件通知接口对预先创建的资源树进行异常事件检测的步骤之前包括:
3.根据权利要求2所述的方法,其特征在于,所述资源组操作接口包括事件通知接口、环境管理接口、资源组管理接口、策略设置接口、进程管理接口,所述通过所述资源组操作接口对预先构建的资源树进行异常事件检测的步骤包括:
4.根据权利要求3所述的方法,其特征在于,所述通过所述资源组管理接口,基于所述资源组模块创建资源树的步骤包括:
5.根据权利要求4所述的方法,其特征在于,所述通过所述策略设置接口对创建的资源树设置资源限制策略的步骤包括:
6.根据权利要求5所述的方法,其特征在于,所述通过所述进程管理接口将进程与已设置资源限制策略的资源树进行关联,以完成所述资源树的构建的步骤包括:
7.根据权利要求6所述的方法,其特...
【专利技术属性】
技术研发人员:任韧,洪潇翼,李铭,
申请(专利权)人:招商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。