一种资源调度方法、装置、设备及介质与流程
未命名
07-28
阅读:91
评论:0
1.本发明涉及计算机技术领域,特别涉及一种资源调度方法、装置、设备及介质。
背景技术:
2.当前,存储管理软件按照业务模块分为若干个服务,不同服务负责处理不同的业务,每个服务对应一个进程;由于管理软件属于控制面,非核心业务,因此通常会对管理软件使用的资源(内存、cpu(central processing unit,中央处理器))进行限制。但是,如图1所示,为传统存储管理软件请求访问示意图,存储管理软件的处理机制是客户端通过restapi请求的方式调用存储系统管理软件接口,存储系统管理软件执行业务逻辑,返回结果,而这种机制不控制各服务资源占用,当总体资源不足时,各服务竞争资源,如果不进行调整,可能导致进程运行缓慢甚至异常。
3.综上所述,如何合理地对存储管理软件进行资源调度是当前亟待解决的问题。
技术实现要素:
4.有鉴于此,本发明的目的在于提供一种资源调度方法、装置、设备及介质,能够合理地对存储管理软件进行资源调度,其具体方案如下:
5.第一方面,本技术公开了一种资源调度方法,应用于安装有调度组件和评分组件的存储管理软件,包括:
6.通过所述评分组件实时监控所述存储管理软件的各资源负载,并对所述存储管理软件的各目标服务进行评分,然后根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态;所述服务状态包括服务健康、服务降级和服务禁止;
7.通过所述调度组件获取所述评分组件发送的所述服务状态,并根据所述服务状态控制将接口访问转发至相应所述目标服务的转发情况以实现对所述存储管理软件的资源调度。
8.可选的,所述对所述存储管理软件的各目标服务进行评分,包括:
9.获取所述调度组件统计并发送的各所述目标服务的接口访问量,并实时监控各所述目标服务的服务信息;所述服务信息包括内存使用量,cpu使用率和服务启动时长;
10.基于所述服务信息和所述接口访问量对所述存储管理软件的各目标服务进行评分。
11.可选的,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:
12.根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,并在服务状态发生变化时将对应的所述目标服务的变化后服务状态发送至所述调度组件,或,实时将所有所述目标服务的服务状态发送至所述调度组件。
13.可选的,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:
14.若所述内存负载高于所述预设内存负载阈值,则对所述服务状态为服务健康的分数最低的所述目标服务进行垃圾回收;
15.若在第一预设时间间隔后所述内存负载高于第一预期规定值,则确定所述目标服务的服务状态为服务禁止。
16.可选的,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:
17.若所述cpu负载高于所述预设cpu负载阈值,则将所述服务状态为服务健康的分数最低的所述目标服务对应的所述服务状态确定为服务降级;
18.若在第二预设时间后所述内存负载低于第二预期规定值,则将所述目标服务对应的所述服务状态确定为服务健康,或,若在第三预设时间后所述内存负载高于所述第二预期规定值,则将所述服务状态确定为服务禁止。
19.可选的,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:
20.当所述存储管理软件中存在服务禁止的所述目标服务时,若所述资源负载都低于对应的预设负载阈值,则将任意选取的一个服务禁止的所述目标服务的所述服务状态确定为服务健康。
21.可选的,所述根据所述服务状态控制将接口访问转发至相应所述目标服务的转发情况以实现对所述存储管理软件的资源调度,包括:
22.若所述目标服务的所述服务状态为服务健康,则所述目标服务对应的所有所述接口访问全部转发至所述目标服务;
23.若所述目标服务的所述服务状态为服务禁止,则禁止所述目标服务对应的所有所述接口访问的转发;
24.若所述目标服务的所述服务状态为服务降级,则对所述目标服务对应的所述接口访问的转发进行限流,若第四预设时间后所述服务状态仍为服务降级,则跳转至所述对所述目标服务对应的所述接口访问的转发进行限流的步骤,直至所述服务状态为服务健康或所述接口访问的转发量为零。
25.第二方面,本技术公开了一种资源调度装置,应用于安装有调度组件和评分组件的存储管理软件,包括:
26.状态确定模块,用于通过所述评分组件实时监控所述存储管理软件的各资源负载,并对所述存储管理软件的各目标服务进行评分,然后根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态;所述服务状态包括服务健康、服务降级和服务禁止;
27.资源调度模块,用于通过所述调度组件获取所述评分组件发送的所述服务状态,并根据所述服务状态控制将接口访问转发至相应所述目标服务的转发情况以实现对所述存储管理软件的资源调度。
28.第三方面,本技术公开了一种电子设备,包括:
29.存储器,用于保存计算机程序;
30.处理器,用于执行所述计算机程序,以实现前述公开的资源调度方法。
31.第四方面,本技术公开了一种计算机可读存储介质,用于保存计算机程序;其中,
所述计算机程序被处理器执行时实现前述公开的资源调度方法。
32.可见,本技术通过所述评分组件实时监控所述存储管理软件的各资源负载,并对所述存储管理软件的各目标服务进行评分,然后根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态;所述服务状态包括服务健康、服务降级和服务禁止;通过所述调度组件获取所述评分组件发送的所述服务状态,并根据所述服务状态控制将接口访问转发至相应所述目标服务的转发情况以实现对所述存储管理软件的资源调度。由此可见,本技术利用资源负载和所述目标服务的分数实时确定各所述目标服务的服务状态,并根据服务状态控制转发情况以实现对所述存储管理软件的资源调度,达到了合理地分配资源的目的;另外,调度组件和评分组件地安装使得存储管理软件中地服务无需做任何修饰,侵入性小,移植性高。
附图说明
33.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
34.图1为本技术公开的一种传统存储管理软件请求访问示意图;
35.图2为本技术公开的一种资源调度方法流程图;
36.图3为本技术公开的一种具体的资源调度方法流程图;
37.图4为本技术公开的一种存储管理软件资源调用示意图;
38.图5为本技术公开的一种资源调度装置结构示意图;
39.图6为本技术公开的一种电子设备结构图。
具体实施方式
40.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
41.当前,存储管理软件按照业务模块分为若干个服务,不同服务负责处理不同的业务,每个服务对应一个进程,当前管理软件运行了10个以上的进程,由于管理软件属于控制面,非核心业务,因此通常会对管理软件使用的资源(内存、cpu)进行限制。但是,如图1所示,存储管理软件的处理机制是客户端通过restapi请求的方式调用存储系统管理软件接口,存储系统管理软件执行业务逻辑,返回结果,而这种机制不控制各服务资源占用,当总体资源不足时,各服务竞争资源,如果不进行调整,可能导致进程运行缓慢甚至异常。
42.为此,本技术实施例提出一种资源调度方案,能够合理地对存储管理软件进行资源调度。
43.本技术实施例公开了一种资源调度方法,应用于安装有调度组件和评分组件的存储管理软件,参见图2所示,该方法包括:
44.步骤s11:通过所述评分组件实时监控所述存储管理软件的各资源负载,并对所述
存储管理软件的各目标服务进行评分,然后根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态;所述服务状态包括服务健康、服务降级和服务禁止。
45.本技术实施例中,所述对所述存储管理软件的各目标服务进行评分,包括:获取所述调度组件统计并发送的各所述目标服务的接口访问量,并实时监控各所述目标服务的服务信息;所述服务信息包括内存使用量,cpu使用率和服务启动时长;基于所述服务信息和所述接口访问量对所述存储管理软件的各目标服务进行评分。
46.需要指出的是,接口访问量(接口调用频率)越高,评分越高,接口调用频率高表明用户访问多,如果该服务的进程被禁止或资源不足将影响较多用户,可以认为该服务相对较重要,因此此类服务打分较高;内存使用量越高,得分越低,服务内存使用量越高,禁止该服务将能释放更多内存,那么只需要禁止较少的服务,就能保障剩下所有服务正常运行,因此此类服务打分较低;cpu使用率越高,评分越低,cpu使用率越高,禁止该服务将能释放更多cpu资源,那么只需要禁止较少的服务,就能保障剩下所有服务正常运行,因此此类服务打分较低;启动时长越长,评分越高,服务启动时间越长,表明越稳定,应优先禁止不稳定的服务,避免禁止稳定的服务,因此此类服务打分较低。综上所述,评分越高,则接口访问量越高,内存使用量越低,cpu使用率越低,启动时长越长,也即,评分越高,则繁忙程度越高,资源消耗量越低,进程重要性以及稳定性越高。
47.需要指出的是,可以通过设置接口访问量,内存使用量,cpu使用率和服务启动时长各自对应的权重来计算评分,在此不做具体限定。
48.需要指出的是,所述接口访问量可以为前单位时间内的访问量,所述单位时间为一小时或一天,在此不做具体限定。
49.步骤s12:通过所述调度组件获取所述评分组件发送的所述服务状态,并根据所述服务状态控制将接口访问转发至相应所述目标服务的转发情况以实现对所述存储管理软件的资源调度。
50.本技术实施例中,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,并在服务状态发生变化时将对应的所述目标服务的变化后服务状态发送至所述调度组件,或,实时将所有所述目标服务的服务状态发送至所述调度组件。
51.需要指出的是,存储管理软件刚开始进行接口转发时,各目标服务对应的服务状态为服务健康,此时会将所有服务的服务健康状态发送至调度组件,之后可以在服务状态发生变化时发送服务状态,也可以实时发送服务状态。
52.本技术实施例中,循环重复步骤s11至步骤s12的步骤以实时进行资源调度。
53.可见,本技术通过所述评分组件实时监控所述存储管理软件的各资源负载,并对所述存储管理软件的各目标服务进行评分,然后根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态;所述服务状态包括服务健康、服务降级和服务禁止;通过所述调度组件获取所述评分组件发送的所述服务状态,并根据所述服务状态控制将接口访问转发至相应所述目标服务的转发情况以实现对所述存储管理软件的资源调度。由此可见,本技术利用资源负载和所述目标服务的分数实时确定各所述目标服务的服务状态,并根据服务状态控制转发情况以实现对所述存储管理软件的资源调度,达到了合
理地分配资源的目的;另外,调度组件和评分组件地安装使得存储管理软件中地服务无需做任何修饰,侵入性小,移植性高。
54.本技术实施例公开了一种具体的资源调度方法,应用于安装有调度组件和评分组件的存储管理软件,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。参见图3所示,具体包括:
55.步骤s21:通过所述评分组件实时监控所述存储管理软件的各资源负载,并对所述存储管理软件的各目标服务进行评分,然后根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态;所述服务状态包括服务健康、服务降级和服务禁止。
56.本技术实施例中,所述资源包括内存资源和cpu资源,不同的资源负载需要利用不同地处理方式,且需要指出的是,每次处理可只处理一个服务,因为本技术处理越少地服务对整体存储管理软件地影响才会是最小;另外,由于评分越高,则繁忙程度越高,资源消耗量越低,进程重要性以及稳定性越高,所以为了影响小应选择评分低的服务首先处理。
57.本技术实施例中,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:若所述内存负载高于所述预设内存负载阈值,则对所述服务状态为服务健康的分数最低的所述目标服务进行垃圾回收;若在第一预设时间间隔后所述内存负载高于第一预期规定值,则确定所述目标服务的服务状态为服务禁止。另外,若在第一预设时间间隔后所述内存负载低于第一预期规定值,则确定所述目标服务的服务状态为服务健康。
58.需要指出的是,内存负载较高时,可以首先进行垃圾处理,不能直接服务禁止,因为要尽量减少对整体软件的影响,所以,如果进行垃圾处理能够解决问题,就不必将服务状态设置为服务禁止。需要指出的是,预设内存负载阈值可根据实际情况确定,在此不做具体限定;第一预设时间间隔可为5分钟,在此不做具体限定;所述第一预期规定值可为所述预设内存负载阈值,但是这种情况可能会使得下一次所述内存负载高于所述预设内存负载阈值的情况会很快出现;所述第一预期规定值也可为小于预设内存负载阈值的值,会使得下一次所述内存负载高于所述预设内存负载阈值的情况较晚出现。
59.本技术实施例中,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:若所述cpu负载高于所述预设cpu负载阈值,则将所述服务状态为服务健康的分数最低的所述目标服务对应的所述服务状态确定为服务降级;若在第二预设时间后所述内存负载低于第二预期规定值,则将所述目标服务对应的所述服务状态确定为服务健康,或,若在第三预设时间后所述内存负载高于所述第二预期规定值,则将所述服务状态确定为服务禁止。
60.需要指出的是,cpu负载较高时,可以首先将服务状态确定为服务降级,此时目标服务的服务量会减少,且不会直接禁止目标服务的全部服务量,使得软件所受影响较小;需要指出的是,预设cpu负载阈值可根据实际情况确定,在此不做具体限定;所述第二预设时间可为1分钟,在此不做具体限定;第二预期规定值可为所述预设cpu负载阈值,但是这种情况可能会使得下一次所述cpu负载高于所述预设cpu负载阈值的情况会很快出现;所述第二预期规定值也可为小于预设cpu负载阈值的值,会使得下一次所述cpu负载高于所述预设cpu负载阈值的情况较晚出现;第三预设时间可为5分钟,在此不做具体限定。需要指出的是,所述的第三预设时间大于所述第二预设时间。
61.本技术实施例中,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:当所述存储管理软件中存在服务禁止的所述目标服务时,若所述资源负载都低于对应的预设负载阈值,则将任意选取的一个服务禁止的所述目标服务的所述服务状态确定为服务健康。
62.本技术实施例中,当同时检测到cpu负载较高和内存负载较高时,可任意选取两者之一对应的处理方法进行处理,如果其中一种方法处理完成后,仍未达到服务健康,则根据实际情况选择处理方法。
63.步骤s22:通过所述调度组件获取所述评分组件发送的所述服务状态。
64.本技术实施例中,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,并在服务状态发生变化时将对应的所述目标服务的变化后服务状态发送至所述调度组件,或,实时将所有所述目标服务的服务状态发送至所述调度组件。
65.需要指出的是,存储管理软件刚开始进行接口转发时,各目标服务对应的服务状态为服务健康,此时会将所有服务的服务健康状态发送至调度组件,之后可以在服务状态发生变化时发送服务状态,也可以实时发送服务状态。
66.步骤s23:若所述目标服务的所述服务状态为服务健康,则所述目标服务对应的所有所述接口访问全部转发至所述目标服务。
67.步骤s24:若所述目标服务的所述服务状态为服务禁止,则禁止所述目标服务对应的所有所述接口访问的转发。
68.本技术实施例中,如果评分组件标记某服务状态为服务禁止,则调度组件将不转发请求给该服务,直接返回请求失败,避免客户端长时间超时等待。
69.步骤s25:若所述目标服务的所述服务状态为服务降级,则对所述目标服务对应的所述接口访问的转发进行限流,若第四预设时间后所述服务状态仍为服务降级,则跳转至所述对所述目标服务对应的所述接口访问的转发进行限流的步骤,直至所述服务状态为服务健康或所述接口访问的转发量为零。
70.本技术实施例中,限流表示将预设百分比的当前接口转发量作为新当前接口转发量;所述预设百分比可为80%,在此不做具体限定,也即拒绝20%的当前接口访问量;具体的,如果服务状态为服务降级,功能受限,调用组件在转发请求时,将拒绝20%的接口访问(该20%接口直接返回失败,剩下80%接口正常转发)。
71.需要指出的是,若第四预设时间后所述服务状态仍为服务降级,则跳转至所述对所述目标服务对应的所述接口访问的转发进行限流的步骤,直至所述服务状态为服务健康或所述接口访问的转发量为零,具体为,如果服务状态仍为服务降级,将把接口流量再减少20%,直到服务状态恢复为服务健康,否则接口调用频率可被降为0。
72.需要指出的是,所述第四预设时间可为1分钟,在此不做具体限定,所述第四预设时间可与所述第二预设时间相等,因为第二预设时间为评分组件在服务降级时检测服务降级是否变化的间隔时间,第四预设时间为调用组件服务降级时检测服务降级是否变化的间隔时间,两者设置时间相同,使得准确性更高,以便组件调用较晚检测到服务降级变化,使得接口访问转发情况不能及时改变。
73.需要指出的是,本技术中通过控制各个目标服务的接口访问的转发量控制各个目标服务所需要的资源以合理地实现资源调度。
74.本技术实施例中,循环重复步骤s21至步骤s25的步骤以实时进行资源调度。
75.综上所述,本技术根据服务内存/cpu使用量、接口调用频率、服务启动时间多个维度对服务进行打分;系统内存资源不足时,首先尝试对评分较低的服务进行内存回收,如果无法回收足够内存,将禁止该服务,强制释放资源;系统cpu资源不足时,首先尝试对评分较低的服务进行限流,如果无法释放足够cpu资源,将禁止该服务,强制释放资源;系统资源充足时,拉起被禁止的服务,合理利用资源;设计调用组件和评分组件。这样的优点是现有系统服务不需做任何修改,侵入性小、移植性高。
76.可见,本技术通过所述评分组件实时监控所述存储管理软件的各资源负载,并对所述存储管理软件的各目标服务进行评分,然后根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态;所述服务状态包括服务健康、服务降级和服务禁止;通过所述调度组件获取所述评分组件发送的所述服务状态;若所述目标服务的所述服务状态为服务健康,则所述目标服务对应的所有所述接口访问全部转发至所述目标服务;若所述目标服务的所述服务状态为服务禁止,则禁止所述目标服务对应的所有所述接口访问的转发;若所述目标服务的所述服务状态为服务降级,则对所述目标服务对应的所述接口访问的转发进行限流,若第四预设时间后所述服务状态仍为服务降级,则跳转至所述对所述目标服务对应的所述接口访问的转发进行限流的步骤,直至所述服务状态为服务健康或所述接口访问的转发量为零。由此可见,本技术利用资源负载和所述目标服务的分数实时确定各所述目标服务的服务状态,并根据服务状态控制转发情况以实现对所述存储管理软件的资源调度,达到了合理地分配资源的目的;另外,调度组件和评分组件地安装使得存储管理软件中地服务无需做任何修饰,侵入性小,移植性高。
77.参见图1所示,传统存储管理软件请求处理流程,该流程适合系统资源不受限的场景,当系统资源不足时会有服务因为申请不到资源,运行缓慢甚至异常;由此本技术提出了图4所示的存储管理软件资源调用示意图,其中增加了调用组件(dispatcher组件)和评分组件(monitor组件),调用组件统计接口访问量(接口统计信息)至分组组件,分组组件将根据资源负载,所述目标服务的分数,内存使用量,cpu使用率,服务启动时长和接口访问量计算得到的服务状态(服务状态监控信息)发送至调控组件,所述调控组件根据服务状态控制将接口访问转发至相应所述目标服务的转发情况以实现对所述存储管理软件的资源调度。图4中,所述目标服务包括对象服务、文件服务、告警监控、性能采集和认证服务;当评分组件确定认证服务为服务禁止(kill)时,调用组件不能将认证服务对应的接口访问请求转发至认证服务。
78.相应的,本技术实施例还公开了一种资源调度装置,应用于安装有调度组件和评分组件的存储管理软件,参见图5所示,该装置包括:
79.状态确定模块11,用于通过所述评分组件实时监控所述存储管理软件的各资源负载,并对所述存储管理软件的各目标服务进行评分,然后根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态;所述服务状态包括服务健康、服务降级和服务禁止;
80.资源调度模块12,用于通过所述调度组件获取所述评分组件发送的所述服务状
态,并根据所述服务状态控制将接口访问转发至相应所述目标服务的转发情况以实现对所述存储管理软件的资源调度。
81.其中,关于上述各个模块更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
82.可见,本技术通过所述评分组件实时监控所述存储管理软件的各资源负载,并对所述存储管理软件的各目标服务进行评分,然后根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态;所述服务状态包括服务健康、服务降级和服务禁止;通过所述调度组件获取所述评分组件发送的所述服务状态,并根据所述服务状态控制将接口访问转发至相应所述目标服务的转发情况以实现对所述存储管理软件的资源调度。由此可见,本技术利用资源负载和所述目标服务的分数实时确定各所述目标服务的服务状态,并根据服务状态控制转发情况以实现对所述存储管理软件的资源调度,达到了合理地分配资源的目的;另外,调度组件和评分组件地安装使得存储管理软件中地服务无需做任何修饰,侵入性小,移植性高。
83.进一步的,本技术实施例还提供了一种电子设备。图6是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本技术的使用范围的任何限制。
84.图6为本技术实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、显示屏23、输入输出接口24、通信接口25、电源26和通信总线27。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的资源调度方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
85.本实施例中,电源26用于为电子设备20上的各硬件设备提供工作电压;通信接口25能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本技术技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口24,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
86.另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括计算机程序221,存储方式可以是短暂存储或者永久存储。其中,计算机程序221除了包括能够用于完成前述任一实施例公开的由电子设备20执行的资源调度方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
87.进一步的,本技术实施例还公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的资源调度方法。
88.关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
89.本技术书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
90.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元
及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
91.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
92.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
93.以上对本技术所提供的一种资源调度方法、装置、设备、存储介质进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
技术特征:
1.一种资源调度方法,其特征在于,应用于安装有调度组件和评分组件的存储管理软件,包括:通过所述评分组件实时监控所述存储管理软件的各资源负载,并对所述存储管理软件的各目标服务进行评分,然后根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态;所述服务状态包括服务健康、服务降级和服务禁止;通过所述调度组件获取所述评分组件发送的所述服务状态,并根据所述服务状态控制将接口访问转发至相应所述目标服务的转发情况以实现对所述存储管理软件的资源调度。2.根据权利要求1所述的资源调度方法,其特征在于,所述对所述存储管理软件的各目标服务进行评分,包括:获取所述调度组件统计并发送的各所述目标服务的接口访问量,并实时监控各所述目标服务的服务信息;所述服务信息包括内存使用量,cpu使用率和服务启动时长;基于所述服务信息和所述接口访问量对所述存储管理软件的各目标服务进行评分。3.根据权利要求1所述的资源调度方法,其特征在于,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,并在服务状态发生变化时将对应的所述目标服务的变化后服务状态发送至所述调度组件,或,实时将所有所述目标服务的服务状态发送至所述调度组件。4.根据权利要求1所述的资源调度方法,其特征在于,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:若所述内存负载高于所述预设内存负载阈值,则对所述服务状态为服务健康的分数最低的所述目标服务进行垃圾回收;若在第一预设时间间隔后所述内存负载高于第一预期规定值,则确定所述目标服务的服务状态为服务禁止。5.根据权利要求1所述的资源调度方法,其特征在于,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:若所述cpu负载高于所述预设cpu负载阈值,则将所述服务状态为服务健康的分数最低的所述目标服务对应的所述服务状态确定为服务降级;若在第二预设时间后所述内存负载低于第二预期规定值,则将所述目标服务对应的所述服务状态确定为服务健康,或,若在第三预设时间后所述内存负载高于所述第二预期规定值,则将所述服务状态确定为服务禁止。6.根据权利要求1所述的资源调度方法,其特征在于,所述根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态,包括:当所述存储管理软件中存在服务禁止的所述目标服务时,若所述资源负载都低于对应的预设负载阈值,则将任意选取的一个服务禁止的所述目标服务的所述服务状态确定为服务健康。7.根据权利要求1至6任一项所述的资源调度方法,其特征在于,所述根据所述服务状态控制将接口访问转发至相应所述目标服务的转发情况以实现对所述存储管理软件的资源调度,包括:若所述目标服务的所述服务状态为服务健康,则所述目标服务对应的所有所述接口访
问全部转发至所述目标服务;若所述目标服务的所述服务状态为服务禁止,则禁止所述目标服务对应的所有所述接口访问的转发;若所述目标服务的所述服务状态为服务降级,则对所述目标服务对应的所述接口访问的转发进行限流,若第四预设时间后所述服务状态仍为服务降级,则跳转至所述对所述目标服务对应的所述接口访问的转发进行限流的步骤,直至所述服务状态为服务健康或所述接口访问的转发量为零。8.一种资源调度装置,其特征在于,应用于安装有调度组件和评分组件的存储管理软件,包括:状态确定模块,用于通过所述评分组件实时监控所述存储管理软件的各资源负载,并对所述存储管理软件的各目标服务进行评分,然后根据各所述资源负载和各所述目标服务的分数实时确定各所述目标服务的服务状态;所述服务状态包括服务健康、服务降级和服务禁止;资源调度模块,用于通过所述调度组件获取所述评分组件发送的所述服务状态,并根据所述服务状态控制将接口访问转发至相应所述目标服务的转发情况以实现对所述存储管理软件的资源调度。9.一种电子设备,其特征在于,包括:存储器,用于保存计算机程序;处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的资源调度方法。10.一种计算机可读存储介质,其特征在于,用于保存计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的资源调度方法。
技术总结
本申请公开了一种资源调度方法、装置、设备及介质,应用于安装有调度组件和评分组件的存储管理软件,涉及计算机技术领域,包括:通过评分组件实时监控存储管理软件的各资源负载,并对存储管理软件的各目标服务进行评分,然后根据各资源负载和各所述目标服务的分数实时确定各目标服务的服务状态;通过调度组件获取评分组件发送的服务状态,并根据服务状态控制将接口访问转发至相应目标服务的转发情况以实现对存储管理软件的资源调度。本申请达到了合理地分配资源的目的;另外,调度组件和评分组件地安装使得存储管理软件中地服务无需做任何修饰,侵入性小,移植性高。移植性高。移植性高。
技术研发人员:李兴华
受保护的技术使用者:济南浪潮数据技术有限公司
技术研发日:2023.05.11
技术公布日:2023/7/27
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种胶带硫化机加压装置的制作方法 下一篇:一种分切母刀无轴套定位装置的制作方法
