CN114816724A - 任务调度方法、信息处理方法、装置、设备及存储介质 - Google Patents
任务调度方法、信息处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114816724A CN114816724A CN202110127451.1A CN202110127451A CN114816724A CN 114816724 A CN114816724 A CN 114816724A CN 202110127451 A CN202110127451 A CN 202110127451A CN 114816724 A CN114816724 A CN 114816724A
- Authority
- CN
- China
- Prior art keywords
- process component
- agent process
- server
- information
- load balancer
- 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
Images
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/5083—Techniques for rebalancing the load in a distributed system
-
- 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
- G06F9/505—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 considering the load
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
技术领域
本发明涉及云计算领域,尤其涉及一种任务调度方法、信息处理方法、装置、设备及存储介质。
背景技术
当前,基于云计算服务的弹性负载均衡器,因其灵活可扩展的部署模式,大流量分发的功能特性,深受广大用户的青睐并得到广泛应用。
然而,现有的部署方案中,一旦代理进程组件宕机,则该代理进程组件所属服务器的存量负载均衡器,将在一定时间内无法进行增删改操作,即服务器失去了对这些负载均衡器的操作权,即使随机分配一个可用的代理进程组件,也存在着因负载均衡器部署调度不均带来的系统资源利用率不均衡或利用率低问题。
发明内容
本发明实施例期望提供一种任务调度方法、信息处理方法、装置、设备及存储介质。
本发明的技术方案是这样实现的:
本发明实施例第一方面提供一种任务调度方法,所述方法包括:接收网络服务组件发出的用于创建负载均衡器或用于更新第一负载均衡器的配置的请求信息;
基于所述请求信息,查询预采集信息,获得查询结果;所述预采集信息中包括至少一个代理进程组件的工作状态,以及每个所述代理进程组件对应的服务器的评定值;所述评定值表征所述代理进程组件所在的服务器的多类资源的综合使用率;
基于所述查询结果,从所述至少一个代理进程组件中确定目标代理进程组件;
基于所述目标代理进程组件,创建负载均衡器或更新所述第一负载均衡器的配置。
可选地,在所述请求信息用于创建负载均衡器的情况下,所述基于所述请求信息,查询预采集信息,包括:
基于所述请求信息查询至少一个服务器中每个服务器的代理进程组件的工作状态信息和标识信息,以及每个所述代理进程组件对应的评定值。
可选地,在所述请求信息用于更新第一负载均衡器的配置的情况下,所述基于所述请求信息,查询预采集信息,包括:
基于所述请求信息查询所述第一负载均衡器所属的第一代理进程组件的工作状态;
若所述第一代理进程组件的工作状态处于异常状态,查询除所述第一代理进程组件以外的其他代理进程组件的工作状态和标识信息,以及所述其他代理进程组件对应的评定值。
可选地,所述基于所述查询结果,从所述至少一个代理进程组件中确定目标代理进程组件,包括:
从工作状态处于正常状态的代理进程组件中确定评定值最高的代理进程组件为目标代理进程组件。
可选地,所述基于所述查询结果,从所述至少一个代理进程组件中确定目标代理进程组件,包括:
若所述第一负载均衡器所属的第一代理进程组件的工作状态处于正常状态,将所述第一代理进程组件确定为目标代理进程组件;
若所述第一代理进程组件的工作状态处于异常状态,从工作状态处于正常状态的其他代理进程组件中确定评定值最高的代理进程组件确定为目标代理进程组件。
可选地,所述基于所述目标代理进程组件,创建负载均衡器,包括:
向所述目标代理进程组件发送用于创建负载均衡器的第一指令,所述第一指令用于所述目标代理进程组件创建负载均衡器。
可选地,在所述第一代理进程组件的工作状态处于异常状态的情况下,基于所述目标代理进程组件,更新所述第一负载均衡器的配置,包括:
向所述目标代理进程组件发送用于更新第一负载均衡器的配置的第二指令,所述第二指令用于所述目标代理进程组件基于预先配置的信息远程执行属于所述第一代理进程组件的所述第一负载均衡器的配置更新。
本发明实施例第二方面提供一种信息处理方法,应用于代理进程组件,所述代理进程组件部署于服务器中,所述方法包括:
获取所述服务器的多类资源的使用信息;
基于每类资源的使用信息以及每类资源对应的权重,确定所述服务器的评定值;所述评定值表征服务器的多类资源的综合使用率;
将所述评定值发送至负载均衡组件。
可选地,所述基于每类资源的使用信息以及每类资源对应的权重,确定所述服务器的评定值,包括:
获得所述服务器的多组资源使用信息,基于所述多组资源使用信息确定每类资源的平均使用信息;每组资源使用信息包括以下资源类型的多个:中央处理器CPU使用率、内存使用率、磁盘使用率、网卡流量、服务器中已创建的负载均衡器的数量;
按照每类资源对应的预设数据区间,确定每类资源的平均使用信息对应的分值;
基于每类资源的对应的分值和每类资源对应的权重,确定所述服务器的评定值。
本发明实施例第三方面提供一种任务调度装置,所述装置包括接收模块,查询模块,第一确定模块和处理模块,其中:
所述接收模块,用于接收网络服务组件发出的用于创建负载均衡器或用于更新第一负载均衡器的配置的请求信息;
所述查询模块,用于基于所述请求信息,查询预采集信息,获得查询结果;所述预采集信息中包括至少一个代理进程组件的工作状态,以及每个所述代理进程组件对应的服务器的评定值;所述评定值表征所述代理进程组件所在的服务器的多类资源的综合使用率;
所述第一确定模块,用于基于所述查询结果,从所述至少一个代理进程组件中确定目标代理进程组件;
所述处理模块,用于基于所述目标代理进程组件,创建负载均衡器或更新所述第一负载均衡器的配置。
可选地,所述查询模块具体用于:
基于所述请求信息查询至少一个服务器中每个服务器的代理进程组件的工作状态信息和标识信息,以及每个所述代理进程组件对应的评定值。
可选地,所述查询模块具体还用于:
基于所述请求信息查询所述第一负载均衡器所属的第一代理进程组件的工作状态;
若所述第一代理进程组件的工作状态处于异常状态,查询除所述第一代理进程组件以外的其他代理进程组件的工作状态和标识信息,以及所述其他代理进程组件对应的评定值。
可选地,所述第一确定模块具体用于:
从工作状态处于正常状态的代理进程组件中确定评定值最高的代理进程组件为目标代理进程组件。
可选地,所述第一确定模块具体还用于:
若所述第一代理进程组件的工作状态处于正常状态,将所述第一代理进程组件确定为目标代理进程组件;
若所述第一代理进程组件的工作状态处于异常状态,从工作状态处于正常状态的所述其他代理进程组件中确定评定值最高的代理进程组件确定为目标代理进程组件。
可选地,所述处理模块具体用于:
向所述目标代理进程组件发送用于创建负载均衡器的第一指令,所述第一指令用于所述目标代理进程组件创建负载均衡器。
可选地,所述处理模块具体还用于:向所述目标代理进程组件发送用于更新第一负载均衡器的配置的第二指令,所述第二指令用于所述目标代理进程组件基于预先配置的信息远程执行属于所述第一代理进程组件的所述第一负载均衡器的配置更新。
本发明实施例第四方面提供一种信息处理装置,应用于代理进程组件,所述代理进程组件部署于服务器中,所述装置包括获取模块,第二确定模块,发送模块,其中:
所述获取模块,用于获取所述服务器的多类资源的使用信息;
所述第二确定模块,用于基于每类资源的使用信息以及每类资源对应的权重,确定所述服务器的评定值;所述评定值表征服务器的多类资源的综合使用率;
所述发送模块,用于将所述评定值发送至负载均衡组件。
可选地,所述第二确定模块具体用于:
获得所述服务器的多组资源使用信息,基于所述多组资源使用信息确定每类资源的平均使用信息;每组资源使用信息包括以下资源类型的多个:中央处理器CPU使用率、内存使用率、磁盘使用率、网卡流量、服务器中已创建的负载均衡器的数量;
按照每类资源对应的预设数据区间,确定每类资源的平均使用信息对应的分值;
基于每类资源的对应的分值和每类资源对应的权重,确定所述服务器的评定值。
本发明实施例第五方面提供一种任务调度设备,所述任务调度设备包括存储器和处理器,其中,所述存储器中存储有指令;
所述处理器用于运行所述存储器中存储的指令,所述指令被处理器运行时,实现上述第一方面所述的任一项所述方法的步骤。
本发明实施例第六方面提供一种信息处理设备,所述信息设备包括存储器和处理器,其中,所述存储器中存储有指令;
所述处理器用于运行所述存储器中存储的指令,所述指令被处理器运行时,实现上述第二方面所述的任一项所述方法的步骤。
本发明实施例第七方面提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述第一方面的任一项所述方法的步骤;或者,所述计算机程序被处理器执行时,实现上述第二方面的任一项所述方法的步骤。
本发明实施例提供的一种任务调度方法、信息处理方法、装置、设备及存储介质,该任务调度方法通过在确定代理进程组件的工作状态以及对应的服务器的资源使用情况的基础上,进行任务调度和处理,在一个代理进程组件宕机时,可以快捷地分配另一个合适的代理进程组件,执行任务,确保了负载均衡开源方案的高可用性,并极大地优化了服务器的资源利用率。该信息处理方法通过获取服务器的多类资源的使用信息,基于每类资源的使用信息以及每类资源对应的权重,确定服务器的评定值,该评定值表征服务器的多类资源的综合使用率,并将评定值发送至负载均衡组件,为任务调度和处理提供了准确依据,保证了任务调度的正常进行。
附图说明
图1为本发明实施例提供的任务调度方法的流程示意图;
图2为本发明实施例提供的创建负载均衡器的系统流程图;
图3为本发明实施例提供的更新负载均衡器的系统流程图;
图4为本发明实施例提供的信息处理方法的流程示意图;
图5为本发明实施例提供的任务调度装置的结构示意图;
图6为本发明实施例提供的信息处理装置的结构示意图;
图7为本发明实施例提供的执行任务调度的系统架构图;
图8为本发明一实施例提供的CPU资源使用率与分值区间的示意图;
图9为本发明一实施例提供的权重设置示意图;
图10为本发明一实施例提供的评定值与每类资源的使用率的示意图
图11为本发明一实施例提供的任务调度装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前的负载均衡器部署方案中,一旦代理进程组件宕机,则该代理进程组件所属服务器的存量负载均衡器,将在一定时间内无法进行增删改操作,即服务器失去了对这些负载均衡器的操作权,即使随机分配一个可用的代理进程组件,也存在着因负载均衡器部署调度不均带来的系统资源利用率不均衡或利用率低的问题。基于此,提出本发明以下各实施例。
请参阅图1,图1为本发明实施例提供的任务调度方法的流程示意图,本发明实施例提供的任务调度方法包括:
S101,接收网络服务组件发出的用于创建负载均衡器或用于更新第一负载均衡器的配置的请求信息。
S102,基于所述请求信息,查询预采集信息,获得查询结果。
S103,基于所述查询结果,从所述至少一个代理进程组件中确定目标代理进程组件。
S104,基于所述目标代理进程组件,创建负载均衡器或更新所述第一负载均衡器的配置。
在一实施例中,该任务调度方法可应用于负载均衡插件中,网络服务组件发出的请求信息可以是创建新的负载均衡器,也可以是对已存在的第一负载均衡器进行更新。其中,预采集信息中包括至少一个代理进程组件的工作状态,以及每个代理进程组件对应的服务器的评定值,还可以包括代理进程组件的标识信息。评定值表征代理进程组件所在的服务器的多类资源的综合使用率。
需要说明的是,本申请涉及的负载均衡服务架构包括但不限于负载均衡插件,网络服务组件,代理进程组件,数据库和消息队列。其中,网络服务组件对外提供应用程序接口,用于接受用户下发的配置,并且可以调用负载均衡插件处理请求。而负载均衡插件则基于网络服务组件发来的请求,选择可用的代理进程组件处理请求。数据库中存储有各组件的相关工作信息,如代理进程组件的宕机信息。消息队列则作为网络服务组件,负载均衡插件和代理进程组件之间的信道。
在一个示例中,以创建新的负载均衡器为例,如图2所示,图2为创建负载均衡器的系统流程图。负载均衡插件接收网络服务组件下发的创建负载均衡器的请求后,通过查询数据库,可以确定当前工作状态正常的一个或多个代理进程组件。数据库中存储有代理进程组件的心跳信息,通过心跳信息的更新时间即可确定对应的代理进程的工作状态。当工作状态正常的代理进程组件仅为一个时,可以直接选定该代理进程组件,用于创建新的负载均衡器。当工作状态正常的代理进程组件有多个时,则需要根据代理进程组件所属的服务器的评定值进行确定。其中,代理进程组件周期性采集所属服务器资源信息,确定用于表征服务器资源使用情况的评定值,并通过消息队列将采集信息传输至数据库,由此,负载均衡插件可以通过查询数据库获取代理进程组件所属的服务器的评定值。当某个代理进程组件在预定时间间隔内未向数据库传输采集信息时,则可以判定该代理进程组件处于宕机状态。
在另一个示例中,以更新第一负载均衡器的配置为例,如图3所示,图3为更新负载均衡器的系统流程图。负载均衡插件接收网络服务组件下发的更新第一负载均衡器的请求。第一负载均衡器可以是一个或多个负载均衡器,如负载均衡器1和/或负载均衡器3。通过查询数据库中存储的代理进程组件1的心跳信息,可以确定第一负载均衡器所属的代理进程组件1的工作状态是否正常。若第一负载均衡器对应的代理进程组件1的工作状态正常,则可以直接通过代理进程组件1,更新第一负载均衡器。若代理进程组件1的工作状态为异常,则查询除代理进程组件1以外的其他代理进程组件的工作状态和标识信息,以及其他代理进程组件对应的评定值,从其他代理进程组件确定目标代理进程组件,以完成对第一负载均衡器的配置的更新。例如,确定代理进程组件2为目标代理进程组件,则代理进程组件2通过系统配置,获取代理进程组件1所在服务器的对应用户登录信息,在代理进程组件1所在的服务器,远程执行第一负载均衡器的配置更新请求,跨机器更新第一负载均衡器的配置。
本实施例中,查询结果包括确定代理进程组件的对应的标识信息和工作状态是否为正常,以及处于正常工作状态的代理进程组件对应的服务器的评定值。在确定各代理进程组件对应的标识信息后,判断各代理进程组件的工作状态,然后确定处于正常工作状态的代理进程组件对应的服务器的评定值,进而确定目标代理进程组件。
本实施例通过在确定代理进程组件的工作状态以及对应的服务器的资源使用情况的基础上,进行任务调度和处理,确保了负载均衡开源方案的高可用性,并优化了服务器的资源利用率。
在一些可选实施例中,对于步骤S102,基于请求信息,查询预采集信息,依据请求信息的不同,查询过程也存在差异。
在一个实施例中,若请求信息为创建新的负载均衡器,则基于请求信息查询至少一个服务器中每个服务器的代理进程组件的工作状态信息和标识信息,以及每个代理进程组件对应的评定值。其中,工作状态表征代理进程组件是否可用,标识信息用于记录和区分不同的代理进程组件,评定值则表征代理进程组件所在的服务器的多类资源的综合使用率。评定值越高,对应的服务器的多类资源的综合使用率越低。可以理解地,当一个服务器的多类资源的综合使用率非常高,如果此时再将该服务器对应的代理进程组件作为目标代理进程组件,则会加剧系统资源的竞争程度,使得资源利用进一步失衡。
在另一个实施例中,若请求信息为更新第一负载均衡器的配置,则基于请求信息查询第一负载均衡器所属的第一代理进程组件的工作状态。
若第一代理进程组件的工作状态处于异常状态,查询除第一代理进程组件以外的其他代理进程组件的工作状态和标识信息,以及其他代理进程组件对应的评定值。
在本实施例中,不同代理进程组件的优先级不同。其中,预更新的第一负载均衡器所属的第一代理进程组件的优先级最高。当接收到更新第一负载均衡器的配置的请求信息时,首先查询第一负载均衡器所属的第一代理进程组件的工作状态。仅当查询到的第一代理进程组件的工作状态为异常时,才考虑查询除第一代理进程组件以外的其他代理进程组件的工作状态和标识信息,以及其他代理进程组件对应的评定值,并依据评定值的高低从工作状态正常的代理进程组件中选定目标代理进程组件。
在一些可选实施例中,对于步骤S103,基于查询结果,从至少一个代理进程组件中确定目标代理进程组件,既要考虑到代理进程组件的工作状态,也需要考虑到代理进程组件所在的服务器的多类资源的综合使用率。
在一个实施例中,对于创建新的负载均衡器,从工作状态处于正常状态的代理进程组件中确定评定值最高的代理进程组件为目标代理进程组件。
评定值越高,表征代理进程组件所在的服务器的多类资源的综合使用率越低,因此,优先选定工作状态正常,且评定值最高的代理进程组件为目标代理进程组件。当然,还可以先利用评定值对代理进程组件进行排序,然后在通过工作状态进行筛选。
在另一个实施例中,对于更新第一负载均衡器的配置,若第一负载均衡器所属的第一代理进程组件的工作状态处于正常状态,将第一代理进程组件确定为目标代理进程组件。
若所述第一代理进程组件的工作状态处于异常状态,从工作状态处于正常状态的其他代理进程组件中确定评定值最高的代理进程组件确定为目标代理进程组件。
具体地,第一负载均衡器所属的第一代理进程组件的优先级最高,当第一代理进程组件的工作状态为正常时,优先选定第一代理进程组件为目标代理进程组件,而不需要考虑其他代理进程组件的工作状态及评定值。若第一代理进程组件的工作状态为异常,则从其他代理进程组件中挑选工作状态正常,且评定值最高的代理进程组件为目标代理进程组件。
在一个实施例中,基于目标代理进程组件,创建负载均衡器,包括:向目标代理进程组件发送用于创建负载均衡器的第一指令,第一指令用于目标代理进程组件创建负载均衡器。
在本实施例中,目标代理进程组件为工作状态正常,且评定值最高的代理进程组件。在确定目标代理进程组件后,负载均衡插件向目标代理进程组件发送用于创建负载均衡器的第一指令,目标代理进程组件依据第一指令,创建负载均衡器。
在一个实施例中,在第一代理进程组件的工作状态处于异常状态的情况下,基于目标代理进程组件,更新第一负载均衡器的配置,包括:
向目标代理进程组件发送用于更新第一负载均衡器的配置的第二指令,第二指令用于目标代理进程组件基于预先配置的信息远程执行属于第一代理进程组件的第一负载均衡器的配置更新。
在本实施例中,负载均衡插件接收网络服务组件发出的更新第一负载均衡器的请求后,查询数据库,获取第一负载均衡器所属的第一代理进程组件的工作状态信息。当第一代理进程组件的工作状态为异常时,从除第一代理进程组件以外的其他代理进程组件中选出目标代理进程组件。负载均衡插件向目标代理进程组件发送用于更新第一负载均衡器的第二指令,目标代理进程组件依据第二指令,更新第一负载均衡器。显然,第二指令所携带的内容与上述实施例中的第一指令携带的内容存在区别,其中,第一指令用于创建新的负载均衡器,而第二指令则用于更新特定的第一负载均衡器。图4为本发明实施例提供的信息处理方法的流程示意图。该信息处理方法应用于代理进程组件,代理进程组件则部署于服务器中。具体地,本发明实施例提供的信息处理方法包括:
S201,获取服务器的多类资源的使用信息。
S202,基于每类资源的使用信息以及每类资源对应的权重,确定服务器的评定值;评定值表征服务器的多类资源的综合使用率。
S203,将评定值发送至负载均衡组件。
在本实施例中,服务器的多类资源的使用信息反映了服务器整体资源的利用率以及各类资源各自的利用率。利用率可以通过分值进行评价,利用率越低,对应的分值越高。
示例性的,如两个服务器的内存使用率分别为0.25和0.65,则可以依据预设映射关系确定每个服务器的评分。映射关系可以为内存使用率在0至0.2之间,对应的分值为90;内存使用率在0.2至0.4之间,对应的分值为70;内存使用率在0.4至0.6之间,对应的分值为50;内存使用率在0.6至0.8之间,对应的分值为30;内存使用率在0.8至1.0之间,对应的分值为10。如此,内存使用率为0.25的服务器的分值可确定为70,内存使用率为0.65的服务器的分值可确定为30。其他类型资源的使用信息的评分规则与内存使用率的评分规则相似,在此不再一一赘述。
服务器的多类资源的使用信息可以包括中央处理器CPU使用率、内存使用率、磁盘使用率、网卡流量、服务器中已创建的负载均衡器的数量。其中,每类资源的使用信息对应的权重可以部分不同,也可以全部不同。基于每类资源的使用信息得到的评分以及每类资源对应的权重,即可确定出反映服务器整体资源使用情况的评定值,进而将评定值发送至负载均衡组件。
本实施例中,通过获取服务器的多类资源的使用信息,基于每类资源的使用信息,得到相应的分值,以及结合每类资源对应的权重,确定服务器的评定值,该评定值表征服务器的多类资源的综合使用率,并将评定值发送至负载均衡组件,为任务调度和处理提供了准确依据,保证了任务调度的正常进行。
在一个实施例中,对于步骤S202,基于每类资源的使用信息以及每类资源对应的权重,确定服务器的评定值,包括:
获得服务器的多组资源使用信息,基于多组资源使用信息确定每类资源的平均使用信息。
按照每类资源对应的预设数据区间,确定每类资源的平均使用信息对应的分值。
基于每类资源的对应的分值和每类资源对应的权重,确定服务器的评定值。
在本实施例中,周期性获得服务器的多组资源使用信息,例如,每间隔1秒钟获取一组资源使用信息。可以理解地,在工作过程中,服务器的每类资源的使用信息并非是一成不变的,当结束某个进程或开始某个进程后,其中的一类资源信息或多类资源信息会发生变化。因此,通过获得服务器的多组资源使用信息,并对多组资源使用信息求均值,进而确定每类资源的平均使用信息对应的分值,保证了每类资源的使用信息对应的分值的准确性。
基于前述实施例,请参阅图5,图5为本发明实施例提供的任务调度装置的结构示意图。该任务调度装置包括接收模块301,查询模块302,第一确定模块303和处理模块304,其中:
接收模块301,用于接收网络服务组件发出的用于创建负载均衡器或用于更新第一负载均衡器的配置的请求信息。
查询模块302,用于基于请求信息,查询预采集信息,获得查询结果。
第一确定模块303,用于基于查询结果,从至少一个代理进程组件中确定目标代理进程组件。
处理模块304,用于基于目标代理进程组件,创建负载均衡器或更新第一负载均衡器的配置。
在一实施例中,该任务调度装置可以是负载均衡插件的一部分,网络服务组件发出的请求信息可以是创建新的负载均衡器,也可以是对已存在的第一负载均衡器进行更新。其中,预采集信息中包括至少一个代理进程组件的工作状态,以及每个代理进程组件对应的服务器的评定值,还可以包括代理进程组件的标识信息。评定值表征代理进程组件所在的服务器的多类资源的综合使用率。
在一个示例中,以创建新的负载均衡器为例,通过查询数据库,可以确定当前工作状态正常的一个或多个代理进程组件。数据库中存储有代理进程组件的心跳信息,通过心跳信息的更新时间即可确定对应的代理进程的工作状态。当工作状态正常的代理进程组件仅为一个时,可以直接选定该代理进程组件,用于创建新的负载均衡器。当工作状态正常的代理进程组件有多个时,则需要根据代理进程组件所属的服务器的评定值进行确定。其中,代理进程组件周期性采集所属服务器资源信息,确定用于表征服务器资源使用情况的评定值,并通过消息队列将采集信息传输至数据库,由此,负载均衡插件可以通过查询数据库获取代理进程组件所属的服务器的评定值。当某个代理进程组件在预定时间间隔内未向数据库传输采集信息时,则可以判定该代理进程组件处于宕机状态。
在另一个示例中,以更新第一负载均衡器的配置为例,第一负载均衡器可以是一个或多个负载均衡器,如负载均衡器1和/或负载均衡器3。通过查询数据库中存储的代理进程组件的心跳信息,可以确定第一负载均衡器所属的代理进程组件1的工作状态是否正常。若第一负载均衡器对应的代理进程组件1的工作状态正常,则可以直接通过代理进程组件1,更新第一负载均衡器。若代理进程组件1的工作状态为异常,则查询除代理进程组件1以外的其他代理进程组件的工作状态和标识信息,以及其他代理进程组件对应的评定值,从其他代理进程组件确定目标代理进程组件,以完成对第一负载均衡器的配置的更新。例如,确定代理进程组件2为目标代理进程组件,则代理进程组件2通过系统配置,获取代理进程组件1所在服务器的对应用户登录信息,在代理进程组件1所在的服务器,远程执行第一负载均衡器的配置更新请求,跨机器更新第一负载均衡器的配置。
本实施例中,查询结果包括确定代理进程组件的对应的标识信息和工作状态是否为正常,以及处于正常工作状态的代理进程组件对应的服务器的评定值。在确定各代理进程组件对应的标识信息后,判断各代理进程组件的工作状态,然后确定处于正常工作状态的代理进程组件对应的服务器的评定值,进而确定目标代理进程组件。
本实施例通过在确定代理进程组件的工作状态以及对应的服务器的资源使用情况的基础上,进行任务调度和处理,确保了负载均衡开源方案的高可用性,并优化了服务器的资源利用率。
在一个实施例中,若请求信息为创建新的负载均衡器,则查询模块302用于基于请求信息查询至少一个服务器中每个服务器的代理进程组件的工作状态信息和标识信息,以及每个代理进程组件对应的评定值。其中,工作状态表征代理进程组件是否可用,标识信息用于记录和区分不同的代理进程组件,评定值则表征代理进程组件所在的服务器的多类资源的综合使用率。评定值越高,对应的服务器的多类资源的综合使用率越低。可以理解地,当一个服务器的多类资源的综合使用率非常高,如果此时再将该服务器对应的代理进程组件作为目标代理进程组件,则会加剧系统资源的竞争程度,使得资源利用进一步失衡。
在另一个实施例中,若请求信息为更新第一负载均衡器的配置,则查询模块302用于基于请求信息查询第一负载均衡器所属的第一代理进程组件的工作状态。
若第一代理进程组件的工作状态处于异常状态,查询除第一代理进程组件以外的其他代理进程组件的工作状态和标识信息,以及其他代理进程组件对应的评定值。
在本实施例中,不同代理进程组件的优先级不同。其中,预更新的第一负载均衡器所属的第一代理进程组件的优先级最高。当接收到更新第一负载均衡器的配置的请求信息时,首先查询第一负载均衡器所属的第一代理进程组件的工作状态。仅当查询到的第一代理进程组件的工作状态为异常时,才考虑查询除第一代理进程组件以外的其他代理进程组件的工作状态和标识信息,以及其他代理进程组件对应的评定值,并依据评定值的高低从工作状态正常的代理进程组件中选定目标代理进程组件。
在一些可选实施例中,基于查询结果,从至少一个代理进程组件中确定目标代理进程组件,既要考虑到代理进程组件的工作状态,也需要考虑到代理进程组件所在的服务器的多类资源的综合使用率。
在一个实施例中,对于创建新的负载均衡器,第一确定模块303用于从工作状态处于正常状态的代理进程组件中确定评定值最高的代理进程组件为目标代理进程组件。
评定值越高,表征代理进程组件所在的服务器的多类资源的综合使用率越低,因此,优先选定工作状态正常,且评定值最高的代理进程组件为目标代理进程组件。当然,还可以先利用评定值对代理进程组件进行排序,然后在通过工作状态进行筛选。
在另一个实施例中,对于更新第一负载均衡器的配置,第一确定模块303用于若第一负载均衡器所属的第一代理进程组件的工作状态处于正常状态,将第一代理进程组件确定为目标代理进程组件。
若所述第一代理进程组件的工作状态处于异常状态,从工作状态处于正常状态的其他代理进程组件中确定评定值最高的代理进程组件确定为目标代理进程组件。
具体地,第一负载均衡器所属的第一代理进程组件的优先级最高,当第一代理进程组件的工作状态为正常时,优先选定第一代理进程组件为目标代理进程组件,而不需要考虑其他代理进程组件的工作状态及评定值。若第一代理进程组件的工作状态为异常,则从其他代理进程组件中挑选工作状态正常,且评定值最高的代理进程组件为目标代理进程组件。
在一个实施例中,处理模块304用于向目标代理进程组件发送用于创建负载均衡器的第一指令,第一指令用于目标代理进程组件创建负载均衡器。
在本实施例中,目标代理进程组件为工作状态正常,且评定值最高的代理进程组件。在确定目标代理进程组件后,负载均衡插件向目标代理进程组件发送用于创建负载均衡器的第一指令,目标代理进程组件依据第一指令,创建负载均衡器。
在一个实施例中,处理模块304用于在第一代理进程组件的工作状态处于异常状态的情况下,基于目标代理进程组件,更新第一负载均衡器的配置,包括:
向目标代理进程组件发送用于更新第一负载均衡器的配置的第二指令,第二指令用于目标代理进程组件基于预先配置的信息远程执行属于第一代理进程组件的第一负载均衡器的配置更新。
在本实施例中,负载均衡插件接收网络服务组件发出的更新第一负载均衡器的请求后,查询数据库,获取第一负载均衡器所属的第一代理进程组件的工作状态信息。当第一代理进程组件的工作状态为异常时,从除第一代理进程组件以外的其他代理进程组件中选出目标代理进程组件。负载均衡插件向目标代理进程组件发送用于更新第一负载均衡器的第二指令,目标代理进程组件依据第二指令,更新第一负载均衡器。显然,第二指令所携带的内容与上述实施例中的第一指令携带的内容存在区别,其中,第一指令用于创建新的负载均衡器,而第二指令则用于更新特定的第一负载均衡器。
基于前述实施例,请参阅图6,图6为本发明实施例提供的信息处理装置的结构示意图。该信息处理装置包括获取模块401,第二确定模块402和发送模块403,其中:
获取模块401,用于获取服务器的多类资源的使用信息。
第二确定模块402,用于基于每类资源的使用信息以及每类资源对应的权重,确定服务器的评定值;评定值表征服务器的多类资源的综合使用率。
发送模块403,用于将评定值发送至负载均衡组件。
在本实施例中,服务器的多类资源的使用信息反映了服务器整体资源的利用率以及各类资源各自的利用率。利用率可以通过分值进行评价,利用率越低,对应的分值越高。具体示例如上述信息处理方法实施例中所述,在此不再一一赘述。
服务器的多类资源的使用信息可以包括中央处理器CPU使用率、内存使用率、磁盘使用率、网卡流量、服务器中已创建的负载均衡器的数量。其中,每类资源的使用信息对应的权重可以部分不同,也可以全部不同。基于每类资源的使用信息得到的评分以及每类资源对应的权重,即可确定出反映服务器整体资源使用情况的评定值,进而将评定值发送至负载均衡组件。
本实施例中,通过获取服务器的多类资源的使用信息,基于每类资源的使用信息,得到相应的分值,以及结合每类资源对应的权重,确定服务器的评定值,该评定值表征服务器的多类资源的综合使用率,并将评定值发送至负载均衡组件,为任务调度和处理提供了准确依据,保证了任务调度的正常进行。
在一个实施例中,第二确定模块402具体用于:
获得服务器的多组资源使用信息,基于多组资源使用信息确定每类资源的平均使用信息。
按照每类资源对应的预设数据区间,确定每类资源的平均使用信息对应的分值。
基于每类资源的对应的分值和每类资源对应的权重,确定服务器的评定值。
在本实施例中,周期性获得服务器的多组资源使用信息,例如,每间隔1秒钟获取一组资源使用信息。可以理解地,在工作过程中,服务器的每类资源的使用信息并非是一成不变的,当结束某个进程或开始某个进程后,其中的一类资源信息或多类资源信息会发生变化。因此,通过获得服务器的多组资源使用信息,并对多组资源使用信息求均值,进而确定每类资源的平均使用信息对应的分值,保证了每类资源的使用信息对应的分值的准确性。
下面结合一个具体的示例对本发明实施例的任务调度方法和信息处理方法进行说明。如图7所示,图7为本发明实施例提供的执行任务调度的系统架构图。其中:
每个服务器中可以包括一个或多个代理进程组件,通过设置定时任务,可以利用服务器信息处理组件周期性采集服务器的各类资源使用信息,进而在确定评定值后,由选择组件确定目标代理进程组件。
具体地,当负载均衡插件接收到创建负载均衡器的请求信息时,负载均衡插件通过查询数据库,可以确定当前工作状态正常的一个或多个代理进程组件。数据库中存储有代理进程组件的心跳信息,通过心跳信息的更新时间即可确定对应的代理进程的工作状态。当工作状态正常的代理进程组件仅为一个时,可以直接选定该代理进程组件,用于创建新的负载均衡器。当工作状态正常的代理进程组件有多个时,则需要根据代理进程组件所属的服务器的评定值进行确定。
示例性地,如图8所示,图8为CPU资源使用率与分值区间的示意图。通过该列表,即可确定CPU资源使用率与分值的映射关系,如当CPU资源使用率为0.45时,落入区间0.4-0.5,则可以确定服务器对应的评分为50。其他类型资源的使用信息的评分规则与CPU资源使用率的评分规则相似,在此不再一一赘述。
每类资源的使用信息分别对应于各自的权重,如图9所示,图9为权重设置示意图,其中,CPU对应的权重为10%,内存对应的权重为30%,硬盘对应的权重为10%,网卡流量对应的权重为40%,LB(Load Balancer,负载均衡器)个数对应的权重为10%,基于每类资源的使用信息以及各自对应的权重,即可以得出分值。需要说明的是,权重的设置并不是固定的,当在某段时间内,其中一种资源的使用率变化较大时,可以相应地调整其对应的权重。
为了确保数据的可靠性,需要周期性采集服务器的多组资源使用信息,并对多组资源使用信息求均值,进而确定每类资源的平均使用信息对应的分值,得到服务器的评定值。
如图10所示,图10为评定值与每类资源的使用率的示意图,对每种类型的资源各采集三个样本信息,并对样本信息求均值,结合图6和图7所示的对应关系,即可以得到各服务器的评定值。
与上述不同的是,当接收到更新第一负载均衡器的请求信息时,需要优先查询第一负载均衡器所属的第一代理进程组件的工作状态。仅当查询到的第一代理进程组件的工作状态为异常时,才考虑查询除第一代理进程组件以外的其他代理进程组件的工作状态和标识信息,以及其他代理进程组件对应的评定值,并依据评定值的高低从工作状态正常的代理进程组件中选定目标代理进程组件,即上述评定值确定方案。
本发明还提供了一种任务调度设备,如图11所示,任务调度设备包括存储器和处理器,其中,存储器中存储有指令;处理器用于运行存储器中存储的指令,指令被处理器运行时,可以实现上述应用于任务调度方法的步骤。
可选地,任务调度设备中的各个组件可通过总线系统耦合在一起。可理解,总线系统用于实现这些组件之间的连接通信。总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
可选地,存储器可以由任何类型的易失性或非易失性存储设备、或者它们的组合来实现。
可选地,处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过软件形式的指令完成,还可以通过硬件的集成逻辑电路完成。上述的处理器可以是通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
本发明还提供了一种信息处理设备,信息处理设备包括存储器和处理器,其中,存储器中存储有指令;处理器用于运行存储器中存储的指令,指令被处理器运行时,可以实现上述应用于信息处理方法的步骤。
本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,可以完成上述任务调度方法中的任一步骤;或者计算机程序被处理器执行时,可以完成上述信息处理方法中的任一步骤。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法、装置和存储介质,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个模块或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的模块可以是、或也可以不是物理上分开的,作为模块显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络模块上;可以根据实际的需要选择其中的部分或全部模块来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能模块可以全部集成在一个处理模块中,也可以是各模块分别单独作为一个模块,也可以两个或两个以上模块集成在一个模块中;上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种任务调度方法,其特征在于,所述方法包括:
接收网络服务组件发出的用于创建负载均衡器或用于更新第一负载均衡器的配置的请求信息;
基于所述请求信息,查询预采集信息,获得查询结果;所述预采集信息中包括至少一个代理进程组件的工作状态,以及每个所述代理进程组件对应的服务器的评定值;所述评定值表征所述代理进程组件所在的服务器的多类资源的综合使用率;
基于所述查询结果,从所述至少一个代理进程组件中确定目标代理进程组件;
基于所述目标代理进程组件,创建负载均衡器或更新所述第一负载均衡器的配置。
2.根据权利要求1所述的方法,其特征在于,所述基于所述查询结果,从所述至少一个代理进程组件中确定目标代理进程组件,包括:
从工作状态处于正常状态的代理进程组件中确定评定值最高的代理进程组件为目标代理进程组件。
3.根据权利要求1所述的方法,其特征在于,所述基于所述查询结果,从所述至少一个代理进程组件中确定目标代理进程组件,包括:
若所述第一负载均衡器所属的第一代理进程组件的工作状态处于正常状态,将所述第一代理进程组件确定为目标代理进程组件;
若所述第一代理进程组件的工作状态处于异常状态,从工作状态处于正常状态的其他代理进程组件中确定评定值最高的代理进程组件确定为目标代理进程组件。
4.一种信息处理方法,应用于代理进程组件,所述代理进程组件部署于服务器中,其特征在于,所述方法包括:
获取所述服务器的多类资源的使用信息;
基于每类资源的使用信息以及每类资源对应的权重,确定所述服务器的评定值;所述评定值表征服务器的多类资源的综合使用率;
将所述评定值发送至负载均衡组件。
5.如权利要求4所述的信息处理方法,其特征在于,所述基于每类资源的使用信息以及每类资源对应的权重,确定所述服务器的评定值,包括:
获得所述服务器的多组资源使用信息,基于所述多组资源使用信息确定每类资源的平均使用信息;每组资源使用信息包括以下资源类型的多个:中央处理器CPU使用率、内存使用率、磁盘使用率、网卡流量、服务器中已创建的负载均衡器的数量;
按照每类资源对应的预设数据区间,确定每类资源的平均使用信息对应的分值;
基于每类资源的对应的分值和每类资源对应的权重,确定所述服务器的评定值。
6.一种任务调度装置,其特征在于,所述装置包括接收模块,查询模块,第一确定模块和处理模块,其中:
所述接收模块,用于接收网络服务组件发出的用于创建负载均衡器或用于更新第一负载均衡器的配置的请求信息;
所述查询模块,用于基于所述请求信息,查询预采集信息,获得查询结果;所述预采集信息中包括至少一个代理进程组件的工作状态,以及每个所述代理进程组件对应的服务器的评定值;所述评定值表征所述代理进程组件所在的服务器的多类资源的综合使用率;
所述第一确定模块,用于基于所述查询结果,从所述至少一个代理进程组件中确定目标代理进程组件;
所述处理模块,用于基于所述目标代理进程组件,创建负载均衡器或更新所述第一负载均衡器的配置。
7.一种信息处理装置,应用于代理进程组件,所述代理进程组件部署于服务器中,其特征在于,所述装置包括获取模块,第二确定模块,发送模块,其中:
所述获取模块,用于获取所述服务器的多类资源的使用信息;
所述第二确定模块,用于基于每类资源的使用信息以及每类资源对应的权重,确定所述服务器的评定值;所述评定值表征服务器的多类资源的综合使用率;
所述发送模块,用于将所述评定值发送至负载均衡组件。
8.一种任务调度设备,其特征在于,所述任务调度设备包括存储器和处理器,其中,所述存储器中存储有指令;
所述处理器用于运行所述存储器中存储的指令,所述指令被处理器运行时,实现权利要求1至3任一项所述方法的步骤。
9.一种信息处理设备,其特征在于,所述信息设备包括存储器和处理器,其中,所述存储器中存储有指令;
所述处理器用于运行所述存储器中存储的指令,所述指令被处理器运行时,实现权利要求4至5任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至3任一项所述方法的步骤;或者,所述计算机程序被处理器执行时,实现权利要求4至5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110127451.1A CN114816724A (zh) | 2021-01-29 | 2021-01-29 | 任务调度方法、信息处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110127451.1A CN114816724A (zh) | 2021-01-29 | 2021-01-29 | 任务调度方法、信息处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114816724A true CN114816724A (zh) | 2022-07-29 |
Family
ID=82526166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110127451.1A Pending CN114816724A (zh) | 2021-01-29 | 2021-01-29 | 任务调度方法、信息处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114816724A (zh) |
-
2021
- 2021-01-29 CN CN202110127451.1A patent/CN114816724A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10225145B2 (en) | Method and device for updating client | |
CN110365748B (zh) | 业务数据的处理方法和装置、存储介质及电子装置 | |
CN106550003B (zh) | 负载均衡的控制方法、装置及系统 | |
CN111555963B (zh) | 消息推送方法、装置、电子设备及存储介质 | |
CN110795203B (zh) | 资源调度方法、装置、系统和计算设备 | |
CN109117275B (zh) | 基于数据分片的对账方法、装置、计算机设备及存储介质 | |
CN110519183B (zh) | 一种节点限速的方法、装置、电子设备及存储介质 | |
CN109510878B (zh) | 一种长连接会话保持方法和装置 | |
CN104052803A (zh) | 一种去中心化的分布式渲染方法及渲染系统 | |
CN111262726B (zh) | 一种配置信息更新方法、装置及计算机可读存储介质 | |
US20160036665A1 (en) | Data verification based upgrades in time series system | |
US20090235250A1 (en) | Management machine, management system, management program, and management method | |
CN106130972B (zh) | 资源访问控制方法和装置 | |
CN104866339A (zh) | Fota数据的分布式持久化管理方法、系统和装置 | |
CN111767128A (zh) | 执行定时任务的方法以及装置 | |
CN111694756A (zh) | 一种应用程序测试方法及装置 | |
CN110784336A (zh) | 基于物联网的多设备智能定时延时场景设置方法及系统 | |
CN109697117B (zh) | 终端控制方法、装置以及计算机可读存储介质 | |
KR20170014804A (ko) | 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템 및 방법 | |
CN106021026B (zh) | 一种备份方法及装置 | |
CN105490829A (zh) | 控制报文传输的方法、装置和网络功能虚拟化系统 | |
CN114816724A (zh) | 任务调度方法、信息处理方法、装置、设备及存储介质 | |
CN107547622B (zh) | 一种资源调整方法及装置 | |
CN114048033A (zh) | 跑批任务的负载均衡方法、装置及计算机设备 | |
CN114064105A (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 |