CN114020435A - 一种任务调度方法、装置、设备及介质 - Google Patents
一种任务调度方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN114020435A CN114020435A CN202111317594.5A CN202111317594A CN114020435A CN 114020435 A CN114020435 A CN 114020435A CN 202111317594 A CN202111317594 A CN 202111317594A CN 114020435 A CN114020435 A CN 114020435A
- Authority
- CN
- China
- Prior art keywords
- online application
- priority
- target electronic
- task
- executed
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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/5038—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 execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供的一种任务调度方法、装置、设备及介质,在本申请中,部署有联机应用实例的目标电子设备从注册中心服务器获取该联机应用实例的功能对应的各联机应用实例的实例注册列表,然后根据注册列表中携带的每个联机应用实例的IP地址,确定每个联机应用实例的优先级,并根据该优先级,确定该目标电子设备是否执行该待执行任务,实现了在进行任务调度时,无需在分布式系统中增加调度中心服务器,降低了分布式系统的复杂性和不确定性。
Description
技术领域
本申请涉及分布式任务调度技术领域,尤其涉及一种任务调度方法、装置、设备及介质。
背景技术
在分布式系统的联机场景中,会存在至少两个具有相同功能的联机应用实例,而联机场景下有时需要定时执行任务,此时每个联机应用实例都会执行该任务。但是,由于重复执行同一任务,会导致该任务的执行结果出现错误,造成任务执行失败。因此在现有技术中,在分布式系统中增加了调度中心服务器,使得在执行任务时,只选择一个联机应用实例执行该任务,避免了对任务的重复执行。
但是,在分布式系统中增加调度中心服务器,相当于扩大了分布式系统的整体架构,并且各部署有联机应用实例的电子设备为了与该调度中心服务器进行通信,会增加接口,导致分布式系统的复杂性和不确定性增加,同时还提高了该分布式系统在运行时出现错误的概率,影响用户的使用感受。
发明内容
本申请提供了一种任务调度方法、装置、设备及介质,用以解决在分布式系统中增加调度中心服务器,增加了分布式系统的复杂性和不确定性,并提高了运行时出现错误的概率的问题。
本申请提供了一种任务调度方法,所述方法包括:
若识别到待执行任务,目标电子设备向注册中心服务器发送获取实例注册列表的请求,其中所述请求中携带有所述目标电子设备中部署的联机应用实例的功能;
接收所述注册中心服务器发送的包含所述联机应用实例的功能对应的各联机应用实例的实例注册列表;
根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级;
根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务。
进一步地,所述根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级包括:
根据所述实例注册列表中联机应用实例对应的IP地址,对所述IP地址进行排序;
根据排序结果中每个联机应用实例的排序位置,确定每个联机应用实例的优先级。
进一步地,所述根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务包括:
若所述待执行任务的数量未超过预设的数量阈值,则判断所述目标电子设备的优先级是否为最高优先级;
若是,则确定所述目标电子设备执行所述待执行任务。
进一步地,所述方法还包括:
若所述目标电子设备的优先级不是最高优先级,则确定所述目标电子设备不执行所述待执行任务。
进一步地,所述根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务包括:
若所述待执行任务的数量超过数量阈值,则针对每个待执行任务,计算该待执行任务的名称的哈希值;计算所述哈希值与所述实例注册列表中的联机应用实例的数量的模值,判断所述模值是否与所述目标电子设备的优先级对应的优先级顺序对应,若是,则确定所述目标电子设备执行该待执行任务。
进一步地,所述方法还包括:
若所述模值不与所述目标电子设备的优先级对应的优先级顺序对应,则确定所述目标电子设备不执行该待执行任务。
本申请还提供了一种任务调度装置,所述装置包括:
发送模块,用于若识别到待执行任务,目标电子设备向注册中心服务器发送获取实例注册列表的请求,其中所述请求中携带有所述目标电子设备中部署的联机应用实例的功能;
接收模块,用于接收所述注册中心服务器发送的包含所述联机应用实例的功能对应的各联机应用实例的实例注册列表;
确定模块,用于根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级;
执行模块,用于根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务。
进一步地,所述确定模块,具体用于根据所述实例注册列表中联机应用实例对应的IP地址,对所述IP地址进行排序;根据排序结果中每个联机应用实例的排序位置,确定每个联机应用实例的优先级。
进一步地,所述执行模块,具体用于若所述待执行任务的数量未超过预设的数量阈值,则判断所述目标电子设备的优先级是否为最高优先级;若是,则确定所述目标电子设备执行所述待执行任务。
进一步地,所述执行模块,还用于若所述目标电子设备的优先级不是最高优先级,则确定所述目标电子设备不执行所述待执行任务。
进一步地,所述执行模块,具体用于若所述待执行任务的数量超过数量阈值,则针对每个待执行任务,计算该待执行任务的名称的哈希值;计算所述哈希值与所述实例注册列表中的联机应用实例的数量的模值,判断所述模值是否与所述目标电子设备的优先级对应的优先级顺序对应,若是,则确定所述目标电子设备执行该待执行任务。
进一步地,所述执行模块,还用于若所述模值不与所述目标电子设备的优先级对应的优先级顺序对应,则确定所述目标电子设备不执行该待执行任务。
本申请还提供了一种电子设备,所述电子设备至少包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序时实现上述任一所述的任务调度方法的步骤。
本申请还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的任务调度方法的步骤。
本申请提供的一种任务调度方法、装置、设备及介质,若识别到待执行任务,目标电子设备向注册中心服务器发送获取实例注册列表的请求,其中该请求中携带有该目标电子设备中部署的联机应用实例的功能,接收注册中心服务器发送的包含该联机应用实例的功能对应的各联机应用实例的实例注册列表,根据该实例注册列表中携带的每个联机应用实例的IP地址,确定该实例注册列表中每个联机应用实例的优先级,根据每个联机应用实例的该优先级,确定该目标电子设备是否执行该待执行任务。在本申请中,部署有联机应用实例的目标电子设备通过从注册中心服务器获取包含该联机应用实例的功能对应的各联机应用实例的实例注册列表,然后根据注册列表中携带的每个联机应用实例的IP地址,确定每个联机应用实例的优先级,并根据该优先级,确定该目标电子设备是否执行该待执行任务,实现了在进行任务调度时,无需在分布式系统中增加调度中心服务器,降低了分布式系统的复杂性和不确定性。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种任务调度过程示意图;
图2为本申请一些实施例提供的一种任务调度的方法的流程示意图;
图3a为本申请一些实施例提供的注册中心服务器保存联机应用实例的IP地址、标识信息以及功能的过程示意图;
图3b为本申请一些实施例提供的注册中心服务器向保存的联机应用实例发送广播信息的过程示意图;
图4为本申请提供的任务调度装置的结构示意图;
图5为本申请提供的一种电子设备结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在本申请中,若识别到待执行任务,目标电子设备向注册中心服务器发送获取实例注册列表的请求,其中该请求中携带有该目标电子设备中部署的联机应用实例的功能,接收该注册中心服务器发送的包含该联机应用实例的功能对应的各联机应用实例的实例注册列表,根据该实例注册列表中携带的每个联机应用实例的IP地址,确定该实例注册列表中每个联机应用实例的优先级,根据每个联机应用实例的该优先级,确定该目标电子设备是否执行该待执行任务。
为了避免在分布式系统中增加调度中心服务器,降低分布式系统的复杂性和不确定性,本申请提供了一种任务调度方法、装置、设备及介质。
实施例1:
图1为本申请一些实施例提供的一种任务调度过程示意图,该过程包括:
S101:若识别到待执行任务,目标电子设备向注册中心服务器发送获取实例注册列表的请求,其中所述请求中携带有所述目标电子设备中部署的联机应用实例的功能。
本申请提供的一种任务调度方法应用于电子设备,该电子设备位于分布式系统中,并且部署有联机应用实例。
在本申请中,分布式系统可以完成至少两种功能,其中每种功能对应至少两个联机应用实例,并且每个联机应用实例部署在不同的电子设备上。在本申请中,分布式系统中还包含有一个注册中心服务器,该注册中心服务器中保存有该分布式系统中所有正在运行的联机应用实例的IP地址、标识信息及功能。针对每个接入到该分布式系统中的联机应用实例,该联机应用实例所在的电子设备会向该注册中心服务器发送该联机应用实例的标识信息、IP地址以及功能,注册中心服务器接收到该电子设备发送的标识信息、IP地址以及功能后,将该标识信息、IP地址以及功能对应保存。其中,在本申请中,联机应用实例的IP地址为该联机应用实例所在的电子设备的IP地址。
并且该注册中心服务器每隔一段时间就会向保存的联机应用实例对应的电子设备发送广播信息,并接收每个联机应用实例所在的电子设备发送的响应信息,针对未发送响应信息的联机应用实例,则认为该联机应用实例下线,则删除保存的该联机应用实例对应的信息。即,在本申请中,注册中心服务器保存的联机应用实例都是处于工作状态的。
在本申请中,具有相同功能的联机应用实例中预先被配置了相同的任务以及每个任务对应的执行时间。此外,在分布式系统中,针对一个任务,只需要由一台联机应用实例完成该任务。因此,当部署有联机应用实例的目标电子设备识别到存在待执行任务时,需要确定是否是由该目标电子设备执行该待执行任务。
为了确定是否是由目标电子设备执行该待执行任务,在本申请中,若目标电子设备识别到存在待执行任务,则向注册中心服务器发送获取实例注册列表的请求,该请求中携带有该目标电子设备中部署的联机应用实例的功能。具体的,在本申请中,当目标电子设备识别到预先保存的任务中存在执行时间为当前时间的待执行任务,则向该目标电子设备所在的分布式系统中的注册中心服务器发送获取实例注册列表的请求。
S102:接收注册中心服务器发送的包含所述联机应用实例的功能对应的各联机应用实例的实例注册列表。
在本申请中,目标电子设备在向所在的分布式系统中的注册中心服务器发送获取实例注册列表的请求后,由于该请求中携带有该目标电子设备中部署的联机应用实例的功能,基于此,注册中心服务器会根据该功能,识别保存的该功能对应的各联机应用实例,并向该目标电子设备发送包含识别到的各联机应用实例的实例注册列表,其中该实例注册列表中包括该目标电子设备中部署的联机应用实例。
S103:根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级。
在本申请中,目标电子设备在接收到注册中心服务器发送的实例注册列表后,为了确定该目标电子设备是否执行该待执行任务,可以通过确定该目标电子设备中部署的联机应用实例的优先级,然后根据该优先级确定该目标电子设备是否执行该待执行任务。
其中,在本申请中,可以确定接收到的实例注册列表中的每个联机应用实例的优先级,然后再确定该目标电子设备中部署的联机应用实例的优先级。具体的,该实例注册列表中携带有每个联机应用实例对应的IP地址,目标电子设备中还预先保存有根据IP地址确定联机应用实例的优先级方法,基于此,该目标电子设备可以根据该实例注册列表中携带的每个联机应用实例的IP地址,确定该实例注册列表中每个联机应用实例的优先级。
S104:根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务。
在本申请中,在确定了实例注册列表中每个联机应用实例的优先级后,可以基于该每个联机应用实例的优先级,确定该目标电子设备是否执行待执行任务。
具体的,可以预先在每个电子设备中保存执行待执行任务的联机应用实例对应的优先级,其中,每个电子设备中保存的优先级相同,一般的,该每个电子设备中预先保存的执行待执行任务的联机应用实例对应的优先级为最高优先级。
当目标电子设备确定了实例注册列表中的每个联机应用实例的优先级后,确定该目标电子设备中部署的联机应用实例对应的优先级,并确定该优先级是否为预先保存的执行待执行任务的联机应用实例对应的优先级,若是,则确定该目标电子设备执行该待执行任务,若否,则确定该目标电子设备不执行该待执行任务。
在本申请中,部署有联机应用实例的目标电子设备通过从注册中心服务器获取包含该的联机应用实例的功能对应的各联机应用实例的实例注册列表,然后根据注册列表中携带的每个联机应用实例的IP地址,确定每个联机应用实例的优先级,并根据该优先级,确定该目标电子设备是否执行该待执行任务,实现了在进行任务调度时,无需在分布式系统中增加调度中心服务器,降低了分布式系统的复杂性和不确定性。
实施例2:
为了确定实例注册列表中每个联机应用实例的优先级,在上述实施例的基础上,在本申请中,所述根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级包括:
根据所述实例注册列表中联机应用实例对应的IP地址,对所述IP地址的数值大小进行排序;
根据排序结果中每个联机应用实例的排序位置,确定每个联机应用实例的优先级。
为了确定实例注册列表中每个联机应用实例的优先级,在本申请中,可以确定该实例注册列表中携带的每个联机应用实例对应的IP地址,并将该IP地址按照数值的大小进行排序。具体的,可以按照IP地址的数值从大到小进行排序,还可以按照IP地址的数值从小到大进行排序,具体的排序规则可以预先保存到目标电子设备中,在此不做限定。
在确定了IP地址数值大小对应的排序结果之后,基于该排序结果,确定每个联机应用实例在该排序结果中的排序位置,并根据该排序位置确定每个联机应用实例的优先级。
具体的,在本申请中,在根据每个联机应用实例在IP地址的排序结果中对应的排序位置,确定每个联机应用实例的优先级时,对应的排序位置越靠前,该联机应用实例的优先级越高,其中最高优先级为0级。
图2为本申请一些实施例提供的一种任务调度的方法的流程示意图,该过程包括:
S201:若识别到待执行任务,目标电子设备向注册中心服务器发送获取实例注册列表的请求。
S202:接收该注册中心服务器发送的包含该联机应用实例的功能对应的各联机应用实例的实例注册列表。
S203:根据该实例注册列表中携带的每个联机应用实例的IP地址,确定该实例注册列表中每个联机应用实例的优先级。
S204:判断该目标电子设备中部署的联机应用实例的优先级是否为最高优先级。
S205:若该目标电子设备中部署的联机应用实例的优先级为最高优先级,则确定该目标电子设备执行该待执行任务。
实施例3:
为了确定目标电子设备是否执行待执行任务,在上述各实施例的基础上,在本申请中,所述根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务包括:
若所述待执行任务的数量未超过预设的数量阈值,则判断所述目标电子设备的优先级是否为最高优先级;
若是,则确定所述目标电子设备执行所述待执行任务。
由于在本申请中,在目标电子设备中仅保存有一个执行待执行任务的联机应用实例的优先级,一般的,该执行待执行任务的联机应用实例对应的优先级为最高优先级。但是当同一时间待执行任务的数量过多时,若所有的待执行任务均由该最高优先级对应的联机应用实例所在的电子设备执行,则会导致该电子设备的负载过大,并且执行待执行任务的耗时将增加。
因此,为了避免同一时间数量过多的待执行任务由优先级最高的联机应用实例所在的电子设备执行,在本申请中,预先设置有数量阈值,只有当前时刻的待执行任务的数量没有超过该数量阈值时,才会由最高优先级对应的联机应用实例所在的电子设备执行该待执行任务。
具体的,在本申请中,在确定了实例注册列表中的每个联机应用实例对应的优先级后,确定当前时刻的待执行任务的数量,若该数量未超过预设的数量阈值,则判断目标电子设备中部署的联机应用实例的优先级是否为最高优先级,若是,则确定该目标电子设备执行该待执行任务。
为了确定目标电子设备是否执行待执行任务,在上述各实施例的基础上,在本申请中,所述方法还包括:
若所述目标电子设备的优先级不是最高优先级,则确定所述目标电子设备不执行所述待执行任务。
在本申请中,若在确定了实例注册列表中的每个联机应用实例对应的优先级之后,确定当前时刻的待执行任务的数量未超过预设的数量阈值,但目标电子设备中部署的联机应用实例的优先级不是最高优先级,则确定该目标电子设备不执行该待执行任务。
实施例4:
为了确定目标电子设备是否执行待执行任务,在上述各实施例的基础上,在本申请中,所述根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务包括:
若所述待执行任务的数量超过数量阈值,则针对每个待执行任务,计算该待执行任务的名称的哈希值;计算所述哈希值与所述实例注册列表中的联机应用实例的数量的模值,判断所述模值是否与所述目标电子设备的优先级对应的优先级顺序对应,若是,则确定所述目标电子设备执行该待执行任务。
为了避免同一时间数量过多的待执行任务由优先级最高的电子设备执行,减小最高优先级对应的电子设备的负载压力,在本申请中,若当前时刻的待执行任务的数量超过预设的数量阈值,则计算每个待执行任务的名称的哈希值,并计算每个待执行任务的名称的哈希值与实例注册列表中的联机应用实例的数量的每个模值。针对每个哈希值,若该哈希值与实例注册列表中的联机应用实例的数量的模值与目标电子设备的优先级对应的优先级顺序对应,则确定该目标电子设备执行该哈希值对应的待执行任务。
具体的,在本申请中,若当前待执行任务的数量超过预设数量阈值,则计算每个待执行任务的名称的哈希值,并计算每个哈希值与实例注册列表中的联机应用实例的数量的模值。即针对每个哈希值,用该哈希值除以实例注册列表中的联机应用实例的数量,将余数确定为该哈希值与实例注册列表中的联机应用实例的数量的模值,若该模值与目标电子设备的优先级对应的优先级顺序对应,则确定该目标电子设备执行该哈希值对应的待执行任务。
为了确定目标电子设备是否执行待执行任务,在上述各实施例的基础上,在本申请中,所述方法还包括:
若所述模值不与所述目标电子设备的优先级对应的优先级顺序对应,则确定所述目标电子设备不执行该待执行任务。
在本申请中,若当前时刻的待执行任务的数量超过预设的数量阈值,则计算每个待执行任务的名称的哈希值,并计算每个哈希值与实例注册列表中的联机应用实例的数量的模值。即针对每个哈希值,用该哈希值除以实例注册列表中的联机应用实例的数量,将余数确定为该哈希值与实例注册列表中的联机应用实例的数量的模值,若该模值不与目标电子设备的优先级对应的优先级顺序对应,则确定该目标电子设备不执行该哈希值对应的待执行任务。
图3a为本申请一些实施例提供的注册中心服务器保存联机应用实例的IP地址、标识信息以及功能的过程示意图,如该图3a所述,该分布式系统中包括三个联机应用实例,分别为联机应用实例一、联机应用实例二和及联机应用实例三。其中联机应用实例一接入到注册中心服务器所在的分布式系统后,该联机应用实例一所在的电子设备向该注册中心服务器发送该联机应用实例一对应的IP地址、标识信息及功能;联机应用实例二接入到注册中心服务器所在的分布式系统后,该联机应用实例二所在的电子设备向该注册中心服务器发送该联机应用实例二对应的IP地址、标识信息及功能;联机应用实例三接入到注册中心服务器所在的分布式系统后,该联机应用实例三所在的电子设备向该注册中心服务器发送该联机应用实例三对应的IP地址、标识信息及功能。
图3b为本申请一些实施例提供的注册中心服务器向保存的联机应用实例发送广播信息的过程示意图,如该图3b所示,注册中心服务器会向保存的联机应用实例对应的电子设备发送广播信息后,接收到联机应用实例二和联机应用实例三发送的响应信息,未接收到联机应用实例一发送的响应信息,则认为该联机应用实例下线,则删除保存的联机应用实例一对应的信息。
实施例5:
图4为本申请提供的任务调度装置的结构示意图,如图4所示,该装置包括:
发送模块401,用于若识别到待执行任务,目标电子设备向注册中心服务器发送获取实例注册列表的请求,其中所述请求中携带有所述目标电子设备中部署的联机应用实例的功能;
接收模块402,用于接收所述注册中心服务器发送的包含所述联机应用实例的功能对应的各联机应用实例的实例注册列表;
确定模块403,用于根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级;
执行模块404,用于根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务。
在一种可能的实施方式中,所述确定模块403,具体用于根据所述实例注册列表中联机应用实例对应的IP地址,对所述IP地址进行排序;根据排序结果中每个联机应用实例的排序位置,确定每个联机应用实例的优先级。
在一种可能的实施方式中,所述执行模块404,具体用于若所述待执行任务的数量未超过预设的数量阈值,则判断所述目标电子设备的优先级是否为最高优先级;若是,则确定所述目标电子设备执行所述待执行任务。
在一种可能的实施方式中,所述执行模块404,还用于若所述目标电子设备的优先级不是最高优先级,则确定所述目标电子设备不执行所述待执行任务。
在一种可能的实施方式中,所述执行模块404,具体用于若所述待执行任务的数量超过数量阈值,则针对每个待执行任务,计算该待执行任务的名称的哈希值;计算所述哈希值与所述实例注册列表中的联机应用实例的数量的模值,判断所述模值是否与所述目标电子设备的优先级对应的优先级顺序对应,若是,则确定所述目标电子设备执行该待执行任务。
在一种可能的实施方式中,所述执行模块404,还用于若所述模值不与所述目标电子设备的优先级对应的优先级顺序对应,则确定所述目标电子设备不执行该待执行任务。
实施例6:
图5为本申请提供的一种电子设备结构示意图,在上述各实施例的基础上,本申请还提供了一种电子设备,如图5所示,包括:处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信;
所述存储器503中存储有计算机程序,当所述程序被所述处理器501执行时,使得所述处理器501执行如下步骤:
若识别到待执行任务,目标电子设备向注册中心服务器发送获取实例注册列表的请求,其中所述请求中携带有所述目标电子设备中部署的联机应用实例的功能;
接收所述注册中心服务器发送的包含所述联机应用实例的功能对应的各联机应用实例的实例注册列表;
根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级;
根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务。
在一种可能的实施方式中,所述根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级包括:
根据所述实例注册列表中联机应用实例对应的IP地址,对所述IP地址进行排序;
根据排序结果中每个联机应用实例的排序位置,确定每个联机应用实例的优先级。
在一种可能的实施方式中,所述根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务包括:
若所述待执行任务的数量未超过预设的数量阈值,则判断所述目标电子设备的优先级是否为最高优先级;
若是,则确定所述目标电子设备执行所述待执行任务。
在一种可能的实施方式中,所述方法还包括:
若所述目标电子设备的优先级不是最高优先级,则确定所述目标电子设备不执行所述待执行任务。
在一种可能的实施方式中,所述根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务包括:
若所述待执行任务的数量超过数量阈值,则针对每个待执行任务,计算该待执行任务的名称的哈希值;计算所述哈希值与所述实例注册列表中的联机应用实例的数量的模值,判断所述模值是否与所述目标电子设备的优先级对应的优先级顺序对应,若是,则确定所述目标电子设备执行该待执行任务。
在一种可能的实施方式中,所述方法还包括:
若所述模值不与所述目标电子设备的优先级对应的优先级顺序对应,则确定所述目标电子设备不执行该待执行任务。
由于上述电子设备解决问题的原理与任务调度方法相似,因此上述电子设备的实施可以参见上述实施例,重复之处不再赘述。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口502用于上述电子设备与其他设备之间的通信。存储器可以包括随机存取存储器(RandomAccess Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。上述处理器可以是通用处理器,包括中央处理器、网络处理器(Network Processor,NP)等;还可以是数字指令处理器(Digital Signal Processing,DSP)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
实施例7:
在上述各实施例的基础上,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有可由处理器执行的计算机程序,当所述程序在所述处理器上运行时,使得所述处理器执行时实现如下步骤:
若识别到待执行任务,目标电子设备向注册中心服务器发送获取实例注册列表的请求,其中所述请求中携带有所述目标电子设备中部署的联机应用实例的功能;
接收所述注册中心服务器发送的包含所述联机应用实例的功能对应的各联机应用实例的实例注册列表;
根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级;
根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务。
在一种可能的实施方式中,所述根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级包括:
根据所述实例注册列表中联机应用实例对应的IP地址,对所述IP地址进行排序;
根据排序结果中每个联机应用实例的排序位置,确定每个联机应用实例的优先级。
在一种可能的实施方式中,所述根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务包括:
若所述待执行任务的数量未超过预设的数量阈值,则判断所述目标电子设备的优先级是否为最高优先级;
若是,则确定所述目标电子设备执行所述待执行任务。
在一种可能的实施方式中,所述方法还包括:
若所述目标电子设备的优先级不是最高优先级,则确定所述目标电子设备不执行所述待执行任务。
在一种可能的实施方式中,所述根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务包括:
若所述待执行任务的数量超过数量阈值,则针对每个待执行任务,计算该待执行任务的名称的哈希值;计算所述哈希值与所述实例注册列表中的联机应用实例的数量的模值,判断所述模值是否与所述目标电子设备的优先级对应的优先级顺序对应,若是,则确定所述目标电子设备执行该待执行任务。
在一种可能的实施方式中,所述方法还包括:
若所述模值不与所述目标电子设备的优先级对应的优先级顺序对应,则确定所述目标电子设备不执行该待执行任务。
由于上述提供的计算机可读取介质解决问题的原理与任务调度方法相似,因此处理器执行上述计算机可读取介质中的计算机程序后,实现的步骤可以参见上述实施例,重复之处不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (14)
1.一种任务调度方法,其特征在于,所述方法包括:
若识别到待执行任务,目标电子设备向注册中心服务器发送获取实例注册列表的请求,其中所述请求中携带有所述目标电子设备中部署的联机应用实例的功能;
接收所述注册中心服务器发送的包含所述联机应用实例的功能对应的各联机应用实例的实例注册列表;
根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级;
根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务。
2.根据权利要求1所述的方法,其特征在于,所述根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级包括:
根据所述实例注册列表中联机应用实例对应的IP地址,对所述IP地址进行排序;
根据排序结果中每个联机应用实例的排序位置,确定每个联机应用实例的优先级。
3.根据权利要求1所述的方法,其特征在于,所述根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务包括:
若所述待执行任务的数量未超过预设的数量阈值,则判断所述目标电子设备的优先级是否为最高优先级;
若是,则确定所述目标电子设备执行所述待执行任务。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述目标电子设备的优先级不是最高优先级,则确定所述目标电子设备不执行所述待执行任务。
5.根据权利要求1所述的方法,其特征在于,所述根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务包括:
若所述待执行任务的数量超过数量阈值,则针对每个待执行任务,计算该待执行任务的名称的哈希值;计算所述哈希值与所述实例注册列表中的联机应用实例的数量的模值,判断所述模值是否与所述目标电子设备的优先级对应的优先级顺序对应,若是,则确定所述目标电子设备执行该待执行任务。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述模值不与所述目标电子设备的优先级对应的优先级顺序对应,则确定所述目标电子设备不执行该待执行任务。
7.一种任务调度装置,其特征在于,所述装置包括:
发送模块,用于若识别到待执行任务,目标电子设备向注册中心服务器发送获取实例注册列表的请求,其中所述请求中携带有所述目标电子设备中部署的联机应用实例的功能;
接收模块,用于接收所述注册中心服务器发送的包含所述联机应用实例的功能对应的各联机应用实例的实例注册列表;
确定模块,用于根据所述实例注册列表中携带的每个联机应用实例的IP地址,确定所述实例注册列表中每个联机应用实例的优先级;
执行模块,用于根据每个联机应用实例的所述优先级,确定所述目标电子设备是否执行所述待执行任务。
8.根据权利要求7所述的装置,其特征在于,所述确定模块,具体用于根据所述实例注册列表中联机应用实例对应的IP地址,对所述IP地址进行排序;根据排序结果中每个联机应用实例的排序位置,确定每个联机应用实例的优先级。
9.根据权利要求7所述的装置,其特征在于,所述执行模块,具体用于若所述待执行任务的数量未超过预设的数量阈值,则判断所述目标电子设备的优先级是否为最高优先级;若是,则确定所述目标电子设备执行所述待执行任务。
10.根据权利要求9所述的装置,其特征在于,所述执行模块,还用于若所述目标电子设备的优先级不是最高优先级,则确定所述目标电子设备不执行所述待执行任务。
11.根据权利要求7所述的装置,其特征在于,所述执行模块,具体用于若所述待执行任务的数量超过数量阈值,则针对每个待执行任务,计算该待执行任务的名称的哈希值;计算所述哈希值与所述实例注册列表中的联机应用实例的数量的模值,判断所述模值是否与所述目标电子设备的优先级对应的优先级顺序对应,若是,则确定所述目标电子设备执行该待执行任务。
12.根据权利要求7所述的装置,其特征在于,所述执行模块,还用于若所述模值不与所述目标电子设备的优先级对应的优先级顺序对应,则确定所述目标电子设备不执行该待执行任务。
13.一种电子设备,其特征在于,所述电子设备至少包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序时实现权利要求1-6中任一所述的任务调度方法的步骤。
14.一种计算机可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6中任一所述的任务调度方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111317594.5A CN114020435A (zh) | 2021-11-09 | 2021-11-09 | 一种任务调度方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111317594.5A CN114020435A (zh) | 2021-11-09 | 2021-11-09 | 一种任务调度方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114020435A true CN114020435A (zh) | 2022-02-08 |
Family
ID=80062312
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111317594.5A Pending CN114020435A (zh) | 2021-11-09 | 2021-11-09 | 一种任务调度方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114020435A (zh) |
-
2021
- 2021-11-09 CN CN202111317594.5A patent/CN114020435A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110768912A (zh) | Api网关限流方法及装置 | |
CN106844055B (zh) | 一种任务的执行方法和装置 | |
CN110474903B (zh) | 可信数据获取方法、装置及区块链节点 | |
CN108287769B (zh) | 一种信息处理方法及装置 | |
CN109426510B (zh) | 软件处理方法、装置、电子设备及计算机可读存储介质 | |
CN111988240A (zh) | 一种数据发送方法、装置、电子设备及存储介质 | |
CN107025129B (zh) | 一种数据处理方法以及装置 | |
CN111722857A (zh) | 软件开发工具包的更新方法、装置、电子设备及存储介质 | |
CN111181777B (zh) | 一种服务降级的方法、装置、计算机设备及存储介质 | |
CN115629951B (zh) | 一种任务全链路追踪方法、第一节点、链路系统及介质 | |
CN111831408A (zh) | 异步任务处理方法、装置、电子设备及介质 | |
CN114020435A (zh) | 一种任务调度方法、装置、设备及介质 | |
CN109815003B (zh) | 智能设备间协同计算方法、系统、智能设备和介质 | |
CN103577299A (zh) | 监控方法和装置、数据处理方法和装置及分布式计算系统 | |
CN110874473A (zh) | 病毒检测方法、装置及系统、云服务系统、存储介质 | |
CN114721801A (zh) | 批量任务执行时间的动态调度方法及装置 | |
CN112148420B (zh) | 基于容器技术的异常任务处理方法、服务器及云平台 | |
CN109993406B (zh) | 一种信息处理方法及装置 | |
CN111352710A (zh) | 进程管理方法及装置、计算设备、存储介质 | |
US20220253300A1 (en) | Software update device, server, software update system, and software update method | |
CN110737533A (zh) | 一种任务调度方法、装置及电子设备和存储介质 | |
CN111294228B (zh) | 线卡编号检测法、装置及其存储介质 | |
CN111107037B (zh) | 一种业务触发的方法及装置 | |
CN117313856B (zh) | 一种可靠性测试规划系统及方法 | |
CN110825606B (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 |