本发明专利技术实施例公开了一种基于Redis的任务分配方法、装置、计算机设备及存储介质,其中方法包括若接收到任务分配请求,解析所述任务分配请求以发送性能计算请求至所有的执行器,以使每个执行器均根据其性能参数以及预设规则计算相应的标准值;将所有的标准值发送至Redis节点中,以使Redis节点将所有的标准值按照数值大小进行排序以得到一标准值序列;根据所述标准值序列确定数值最小的标准值,并将该数值最小的标准值所对应的执行器作为目标执行器;调用所述目标执行器以执行所述待处理任务。本发明专利技术能够使得调度器通过Redis节点了解执行器的相关性能参数以便及时合理地进行任务调度分配,提高了整体的工作效率以及用户的使用体验度。
Redis based task allocation method, device, computer equipment and storage medium
【技术实现步骤摘要】
基于Redis的任务分配方法、装置、计算机设备及存储介质
本专利技术涉及任务调度
,尤其涉及一种基于Redis的任务分配方法、装置、计算机设备及存储介质。
技术介绍
在现有的任务调度系统中,一般情况下是由调度器来完成任务的调度,调度的规则是根据执行器的计算资源和运行资源来综合考虑进行任务的分配。这样的任务分配方式十分依赖于执行器定时向调度器汇报的资源使用情况和任务执行情况,当有新的任务请求时,而执行器又尚未向调度器汇报目前的资源使用情况和任务执行情况时,调度器只能根据执行器的上一次汇报的资源使用情况和任务执行情况进行任务的分配,此时则会导致执行器之间的任务分配不均匀,即会使得有些执行器执行的任务过于繁重,而有些执行器则处于空间状态,没有任务可以执行,影响整个调度的性能和效率。
技术实现思路
本专利技术实施例提供了一种基于Redis的任务分配方法、装置、计算机设备及存储介质,能够在Redis中根据执行器的相关性能参数进行排序,从而使得调度器可以及时合理地进行任务调度分配,提高了整体的工作效率以及用户的使用体验度。第一方面,本专利技术实施例提供了一种基于Redis的任务分配方法,其应用于调度器,该方法具体包括:若接收到任务分配请求,根据所述任务分配请求发送性能计算请求至所有的执行器,以使每个执行器均根据其性能参数以及预设规则计算相应的标准值,其中,所述任务分配请求包括至少一个待处理任务;将所有的标准值发送至Redis节点中,以使Redis节点将所有的标准值按照数值大小进行排序以得到一标准值序列;根据所述标准值序列确定数值最小的标准值,并将该数值最小的标准值所对应的执行器作为目标执行器;调用所述目标执行器以使目标执行器执行所述待处理任务。第二方面,本专利技术实施例还提供了一种基于Redis的任务分配装置,应用于调度器,该装置具体包括:处理单元,用于若接收到任务分配请求,解析所述任务分配请求以发送性能计算请求至所有的执行器,以使每个执行器均根据其性能参数以及预设规则计算相应的标准值,其中,所述任务分配请求包括至少一个待处理任务;第一获取单元,用于将所有的标准值发送至Redis节点中,以使Redis节点将所有的标准值按照数值大小进行排序以得到一标准值序列;第一确定单元,用于根据所述标准值序列确定数值最小的标准值,并将该数值最小的标准值所对应的执行器作为目标执行器;调用单元,用于调用所述目标执行器以执行所述待处理任务。第三方面,本专利技术实施例还提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法。第四方面,本专利技术实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序当被处理器执行时可实现上述方法。本专利技术实施例提供了一种基于Redis的任务分配方法、装置、计算机设备及存储介质。其中,所述方法包括:若接收到任务分配请求,根据所述任务分配请求发送性能计算请求至所有的执行器,以使每个执行器均根据其性能参数以及预设规则计算相应的标准值,其中,所述任务分配请求包括至少一个待处理任务;获取所有的标准值,并将所有的标准值按照数值大小进行排序以得到一标准值序列;根据所述标准值序列确定数值最小的标准值,并将该数值最小的标准值所对应的执行器作为目标执行器;调用所述目标执行器以使目标执行器执行所述待处理任务。本专利技术实施例可以在调度器收到任务分配请求时,发送性能计算请求至所有的执行器以使所有的执行器将各自的性能参数转换成标准值,再将标准值发送至Redis节点中,从而使得调度器能够通过Redis节点了解各个执行器的相关性能参数以便及时合理地进行任务调度分配,避免了执行器的不合理使用,提高了整体的工作效率以及用户的使用体验度。附图说明为了更清楚地说明本专利技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的基于Redis的任务分配方法的应用场景示意图;图2是本专利技术实施例提供的基于Redis的任务分配方法的流程示意图;图3是本专利技术实施例提供的基于Redis的任务分配方法的子流程示意图;图4是本专利技术实施例提供的基于Redis的任务分配方法的子流程示意图;图5是本专利技术实施例提供的基于Redis的任务分配方法的子流程示意图图6是本专利技术实施例提供的基于Redis的任务分配装置的示意性框图;图7是本专利技术实施例提供的基于Redis的任务分配装置的处理单元的示意性框图;图8是本专利技术实施例提供的基于Redis的任务分配装置的第一获取单元的示意性框图;图9是本专利技术实施例提供的基于Redis的任务分配装置的第一确定单元的示意性框图;图10是本专利技术实施例提供的计算机设备的示意性框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本专利技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。图1为本专利技术实施例提供的基于Redis的任务分配的方法的应用场景示意图。调度器20在收到任务分配请求后,能够通过向执行器10发送性能计算请求以使执行器10将相关性能参数发送至Redis节点,然后调度器20可以通过Redis节点了解执行器的性能参数从而合理地分配任务,其中,在Redis节点中,Redis节点可以根据执行器的性能参数情况,对执行器进行排序,从而使得调度器能够直接通过Redis节点安排调度器执行任务。图2是本专利技术实施例提供的基于Redis的任务分配的方法的流程示意图,其中,该方法应用于调度器,调度器可以安装在终端中,终端可以是笔记本、台式电脑以及平板电脑等设备。步骤S110,若接收到任务分配请求,解析所述任务分配请求以发送性能计算请求至所有的执行器,以使每个执行器均根据其性能参数以及预设规则计算相应的标准值,其中,所述任务分配请求包括至少一个待处理任务。在本实施例中,当调度器接收到新的任务分配请求时,解析该任务分配请求以获本文档来自技高网...
【技术保护点】
1.一种基于Redis的任务分配方法,应用于调度器,其特征在于,所述方法包括:/n若接收到任务分配请求,解析所述任务分配请求以发送性能计算请求至所有的执行器,以使每个执行器均根据其性能参数以及预设规则计算相应的标准值,其中,所述任务分配请求包括至少一个待处理任务;/n将所有的标准值发送至Redis节点中,以使Redis节点将所有的标准值按照数值大小进行排序以得到一标准值序列;/n根据所述标准值序列确定数值最小的标准值,并将该数值最小的标准值所对应的执行器作为目标执行器;/n调用所述目标执行器以执行所述待处理任务。/n
【技术特征摘要】
1.一种基于Redis的任务分配方法,应用于调度器,其特征在于,所述方法包括:
若接收到任务分配请求,解析所述任务分配请求以发送性能计算请求至所有的执行器,以使每个执行器均根据其性能参数以及预设规则计算相应的标准值,其中,所述任务分配请求包括至少一个待处理任务;
将所有的标准值发送至Redis节点中,以使Redis节点将所有的标准值按照数值大小进行排序以得到一标准值序列;
根据所述标准值序列确定数值最小的标准值,并将该数值最小的标准值所对应的执行器作为目标执行器;
调用所述目标执行器以执行所述待处理任务。
2.根据权利要求1所述的基于Redis的任务分配的方法,其特征在于,所述性能参数包括CPU使用率、内存使用率、磁盘使用率、已执行的任务数量、已执行成功的任务数量以及执行任务所耗费的时间。
3.根据权利要求2所述的基于Redis的任务分配的方法,其特征在于,所述若接收到任务分配请求,解析所述任务分配请求以发送性能计算请求至所有的执行器,以使每个执行器均根据其性能参数以及预设规则计算相应的标准值的步骤,包括:
若接收到任务分配请求,解析所述任务分配请求以发送性能计算请求至所有执行器以使所有执行器确定其CPU使用率、内存使用率、磁盘使用率、已执行的任务数量、已执行成功的任务数量以及执行任务所耗费的时间;
控制每个执行器将其CPU使用率、内存使用率、磁盘使用率、已执行的任务数量、已执行成功的任务数量以及执行任务所耗费的时间按照预设的权重比相加求和以得到相应的标准值。
4.根据权利要求1所述的基于Redis的任务分配的方法,其特征在于,所述将所有的标准值发送至Redis节点中,以使Redis节点将所有的标准值按照数值大小进行排序以得到一标准值序列的步骤,包括:
将所有的标准值发送至Redis节点;
将所有的标准值在Redis节点中按照数值大小进行排序以得到一中间序列;
若所述中间序列存在数值相同的标准值,确定数值相同的每个标准值所对应的执行器;
获取每个所确定的执行器已执行成功的任务数量;
根据所获取的任务数量的大小将中间序列中的所确定的执行器对应的标准值进行再次排序,以得到标准值序列。
5.根据权利要求1所述的基于Redis的任务分配的方法,其特征在于,所述调用所述目标执行器以执行所述待处理任务的步骤之后,还包括:
若所述目标执...
【专利技术属性】
技术研发人员:孙朝和,申志彬,肖树德,
申请(专利权)人:深圳前海环融联易信息科技服务有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。