CN111459645B - 一种任务调度方法、装置和电子设备 - Google Patents
一种任务调度方法、装置和电子设备 Download PDFInfo
- Publication number
- CN111459645B CN111459645B CN202010335543.4A CN202010335543A CN111459645B CN 111459645 B CN111459645 B CN 111459645B CN 202010335543 A CN202010335543 A CN 202010335543A CN 111459645 B CN111459645 B CN 111459645B
- Authority
- CN
- China
- Prior art keywords
- task
- electronic device
- scheduled
- target electronic
- electronic devices
- 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.)
- Active
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
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种任务调度方法、装置和电子设备,涉及计算机技术领域中的资源分配领域。具体实现方案为:一种任务调度方法,应用于第一电子设备,包括:在接收到待调度任务的情况下,获取至少两台第二电子设备的当前任务量,其中,所述当前任务量为第二电子设备的任务队列中的任务占用的资源总和;基于所述至少两台第二电子设备的当前任务量,在所述至少两台第二电子设备中确定第一目标电子设备;将所述待调度任务分配至所述第一目标电子设备。本申请提供的一种任务调度方法、装置和电子设备,可以解决现有技术中存在任务调度不合理的问题。
Description
技术领域
本申请涉及计算机技术领域中的资源分配领域,具体涉及一种任务调度方法、装置和电子设备。
背景技术
随着互联网和信息技术的发展,基于大数据计算处理的任务种类越来越多,需要任务执行器处理的任务量也越来越大,单台任务执行器的任务处理能力已不能满足用户需求。基于此,现有技术中提出了一种分布式任务处理系统,通过将任务调度到多台任务执行器,由多台任务执行器共同配合对任务进行处理。现有技术中,在任务进行调度时,由于调度规则不合理,容易导致任务调度不合理的问题。
发明内容
本申请提供了一种任务调度方法、装置和电子设备,以解决现有技术中存在任务调度不合理的问题。
第一方面,本申请提供一种任务调度方法,应用于第一电子设备,包括:
在接收到待调度任务的情况下,获取至少两台第二电子设备的当前任务量,其中,所述当前任务量为第二电子设备的任务队列中的任务占用的资源总和;
基于所述至少两台第二电子设备的当前任务量,在所述至少两台第二电子设备中确定第一目标电子设备;
将所述待调度任务分配至所述第一目标电子设备。
这样,在接收到待调度任务的情况下,先获取可执行该待调度任务的各个第二电子设备的当前任务量,并基于各第二电子设备的当前任务量确定第一目标电子设备,然后将所述待调度任务分配至第一目标电子设备。本申请通过基于至少两台第二电子设备的当前任务量,确定用于接收所述待调度任务的第一目标电子设备,有利于保证各第二电子设备上的任务量始终处于相对均衡的状态,从而提高了任务调度的合理性。
可选地,所述获取至少两台第二电子设备的当前任务量,包括:
获取第二目标电子设备的任务队列中的至少一个第一任务,所述第二目标电子设备为所述至少两台第二电子设备中的任一第二电子设备;
根据所述至少一个第一任务和预设任务权重列表,计算所述第二目标电子设备的当前任务量,其中,所述预设权重列表包括可运行于所述第二目标电子设备上的任务占用的资源数量。
该实施方式中,通过预先对各个任务所占用的资源数量进行计算得到预设任务权重列表,从而实现对各第二电子设备当前任务量的准确计算。
可选地,所述至少一个第一任务为所述第二目标电子设备的任务队列中的全部任务。
该实施方式中,通过进一步限定所述至少一个第一任务为所述第二目标电子设备的任务队列中的全部任务,从而确保所计算出的第二目标电子设备的任务量为所述第二目标电子设备当前资源的实际消耗量。
可选地,所述将所述待调度任务分配至第一目标电子设备之前,还包括:
确定所述待调度任务的占用资源数量;
所述将所述待调度任务分配至所述第一目标电子设备,包括:
在所述第一目标电子设备当前剩余的资源数量大于所述待调度任务的占用资源数量的情况下,将所述待调度任务分配至所述第一目标电子设备。
该实施方式中,通过进一步确定所述待调度任务的占用资源数量,以及第一目标电子设备当前剩余的资源数量,并在第一目标电子设备当前剩余的资源数量大于所述占用资源数量的情况下,将所述待调度任务分配至所述第一目标电子设备。从而避免由于将待调度任务分配至第一目标电子设备,而导致第一目标电子设备由于超负荷而宕机的问题。
可选地,所述确定所述待调度任务的占用资源数量之后,所述方法还包括:
在所述第一目标电子设备当前剩余的资源数量小于或者等于所述待调度任务的占用资源数量的情况下,实时监测所述至少两台第二电子设备的当前剩余的资源数量;
在第三目标电子设备的当前任务剩余的资源数量大于所述待调度任务的占用资源数量的情况下,将所述待调度任务分配至所述第三目标电子设备,其中,所述第三目标电子设备为所述至少两台第二电子设备中的任一第二电子设备。
该实施方式中,在确定暂时不分配所述待调度任务之后,还进一步监测各所述第二电子设备的当前剩余的资源数量,并在第三目标电子设备的当前任务剩余的资源数量大于所述目标资源数量的情况下,将所述待调度任务分配至所述第三目标电子设备。
可选地,所述第一目标电子设备为所述至少两台第二电子设备中当前任务量最少的第二电子设备。
该实施方式中,通过将至少两台第二电子设备中当前任务量最少的第二电子设备确定为第一目标电子设备,这样,可以进一步确保各所述第二电子设备当前任务量始终处于相对均衡的状态,从而提高了各第二电子设备的资源利用率。
上述申请中的一个实施例具有如下优点或有益效果:在接收到待调度任务的情况下,先获取可执行该待调度任务的各个第二电子设备的当前任务量,并基于各第二电子设备的当前任务量确定第一目标电子设备,然后将所述待调度任务分配至第一目标电子设备。本申请通过基于至少两台第二电子设备的当前任务量,确定用于接收所述待调度任务的第一目标电子设备,有利于保证各第二电子设备上的任务量始终处于相对均衡的状态,从而提高了任务调度的合理性。
可选地,所述待调度任务为视频编辑任务。
该实施方式中,通过将上述任务调度方法应用于视频编辑任务,可以有效的解决现有技术中在对视频编辑任务进行调度时,存在调度不合理的问题。
第二方面,本申请提供一种任务调度装置,包括:
获取模块,用于在接收到待调度任务的情况下,获取至少两台第二电子设备的当前任务量,其中,所述当前任务量为第二电子设备的任务队列中的任务占用的资源总和;
第一确定模块,用于基于所述至少两台第二电子设备的当前任务量,在所述至少两台第二电子设备中确定第一目标电子设备;
分配模块,用于将所述待调度任务分配至所述第一目标电子设备。
可选地,所述获取模块,包括:
获取子模块,用于获取第二目标电子设备的任务队列中的至少一个第一任务,所述第二目标电子设备为所述至少两台第二电子设备中的任一第二电子设备;
计算子模块,用于根据所述至少一个第一任务和预设任务权重列表,计算所述第二目标电子设备的当前任务量,其中,所述预设权重列表包括可运行于所述第二目标电子设备上的任务占用的资源数量。
可选地,所述至少一个第一任务为所述第二目标电子设备的任务队列中的全部任务。
可选地,所述装置还包括:
第二确定模块,用于确定所述待调度任务的占用资源数量;
所述分配模块,具体用于在所述第一目标电子设备当前剩余的资源数量大于所述待调度任务的占用资源数量的情况下,将所述待调度任务分配至所述第一目标电子设备。
可选地,所述装置还包括:
监测模块,用于在所述第一目标电子设备当前剩余的资源数量小于或者等于所述待调度任务的占用资源数量的情况下,实时监测所述至少两台第二电子设备的当前剩余的资源数量;
所述分配模块,还用于在第三目标电子设备的当前任务剩余的资源数量大于所述待调度任务的占用资源数量的情况下,将所述待调度任务分配至所述第三目标电子设备,其中,所述第三目标电子设备为所述至少两台第二电子设备中的任一第二电子设备。
可选地,所述第一目标电子设备为所述至少两台第二电子设备中当前任务量最少的第二电子设备。
可选地,所述待调度任务为视频编辑任务。
第三方面,本申请提供一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请提供的任务调度方法。
第四方面,本申请提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请提供的任务调度方法。
上述申请中的一个实施例具有如下优点或有益效果:在接收到待调度任务的情况下,先获取可执行该待调度任务的各个第二电子设备的当前任务量,并基于各第二电子设备的当前任务量确定第一目标电子设备,然后将所述待调度任务分配至第一目标电子设备。本申请通过基于至少两台第二电子设备的当前任务量,确定用于接收所述待调度任务的第一目标电子设备,有利于保证各第二电子设备上的任务量始终处于相对均衡的状态,从而提高了任务调度的合理性。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是本申请实施例中所提供的任务调度方法的流程图之一;
图2是本申请实施例中所提供的任务调度方法的流程图之二;
图3是本申请实施例中所提供的任务调度方法的流程图之三;
图4是用来实现本申请实施例的任务调度装置的结构示意图;
图5是用来实现本申请实施例的任务调度方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
请参见图1,图1是本发明实施例提供的一种任务调度方法,应用于第一电子设备,包括:
步骤101、在接收到待调度任务的情况下,获取至少两台第二电子设备的当前任务量,其中,当前任务量为第二电子设备的任务队列中的任务占用的资源总和。
其中,所述至少两台第二电子设备可以是用于执行第一电子设备分配的待调度任务的任务执行器,具体而言,当第一电子设备接收到待调度任务时,将所述待调度任务分配至所述至少两台第二电子设备中进行执行。
上述第二电子设备的任务队列存储当前该第二电子设备中所有未完成任务的任务信息,该任务队列中可以包括多个不同类型的任务,所述第二电子设备按照顺序对任务队列中的任务进行执行。应当理解地,当某一任务执行完毕后,其对应的任务信息从所述任务队列中自动删除。
上述资源可以是指第二电子设备的CPU资源。所述任务队列中的任务占用的资源总和可以是指任务队列中所有任务所需占用的第二电子设备的CPU的总和,例如,任务队列中包括以下三个任务:任务a,占用资源数量为5%;任务b,占用资源数量为7%;任务c,占用资源数量为8%,此时,所述任务队列中的任务占用的资源总和为20%。应当理解的上述任务a,占用资源数量为5%所表示的意思是任务a占用第二电子设备的总资源数的5%,同理,上述任务b和任务c所占用的资源数量也是相对于第二电子设备的总资源数而言。
步骤102、基于所述至少两台第二电子设备的当前任务量,在所述至少两台第二电子设备中确定第一目标电子设备。
其中,可以将所述至少两台第二电子设备中当前任务量较少的第二电子设备确定为所述第一目标电子设备。
此外,也可以对所述至少两台第二电子设备进行编号,具体地,可以根据各第二电子设备的老化程度为所述至少一个第二电子设备进行编号,并对老化程度低的第二电子设备设置靠前的编号。在基于所述至少两台第二电子设备的当前任务量,确定第一目标电子设备时,可以先从所述至少两台第二电子设备中筛选出当前任务量低于第一预设值的第二电子设备,然后,从所筛选出的第二电子设备中确定编号靠前的第二电子设备为所述第一目标电子设备,其中,所述第一预设值可以为30%、50%等。
步骤103、将所述待调度任务分配至所述第一目标电子设备。
由上述步骤102可知,所确定的第一目标电子设备为所述至少两台第二电子设备中当前任务量减少的第二电子设备,通过将待调度任务分配至所述第一目标电子设备,可以保证各第二电子设备上的任务量始终处于相对均衡的状态。
本申请实施例中,在接收到待调度任务的情况下,先获取可执行该待调度任务的各个第二电子设备的当前任务量,并基于各第二电子设备的当前任务量确定第一目标电子设备,然后将所述待调度任务分配至第一目标电子设备。本申请通过基于至少两台第二电子设备的当前任务量,确定用于接收所述待调度任务的第一目标电子设备,有利于保证各第二电子设备上的任务量始终处于相对均衡的状态,从而提高了任务调度的合理性。
可选地,所述第一目标电子设备为所述至少两台第二电子设备中当前任务量最少的第二电子设备。
具体地,本实施例通过将至少两台第二电子设备中当前任务量最少的第二电子设备确定为第一目标电子设备,这样,可以进一步确保各所述第二电子设备当前任务量始终处于相对均衡的状态,从而提高了各第二电子设备的资源利用率。
可选地,所述获取至少两台第二电子设备的当前任务量,包括:
获取第二目标电子设备的任务队列中的至少一个第一任务,所述第二目标电子设备为所述至少两台第二电子设备中的任一第二电子设备,应当理解的,所述第二目标电子设备可以为上述第一目标电子设备;
根据所述至少一个第一任务和预设任务权重列表,计算所述第二目标电子设备的当前任务量,其中,所述预设权重列表包括可运行于所述第二目标电子设备上的任务占用的资源数量。
具体地,可以预先建立所述预设任务权重列表,该任务权重列表中可以预先存储所有可运行于所述第二电子设备上的第一任务,以及,所述第一任务运行于所述第二电子设备时所需占用的资源数量。其中,该资源数量是根据第一任务在第二电子设备实际运行时所需占用的资源数量确定。例如,为了确定某一第一任务所需占用的资源数量,可以在所述第二电子设备上运行N次所述第一任务,并分别记录所述第一任务N次运行时,所占用的资源数量,然后,求解N次运行所述第一任务所占用的资源的平均值,并将该平均值确定为该第一任务所需占用的资源数量,储存于所述预设任务权重列表中。
上述根据所述至少一个第一任务和预设任务权重列表,计算所述第二目标电子设备的当前任务量的具体过程可以是:将所述第二目标电子设备的任务队列中的所有第一任务乘以各第一任务所需占用的资源数量,再对所求解的各个结果进行求和即可得到第二目标电子设备的当前任务量。例如,所述第二目标电子设备的任务队列中包括2个任务a和3个任务b,所述预设任务权重列表中记载了:任务a,占用资源数量为5%;任务b,占用资源数量为7%;任务c,占用资源数量为8%,在此情况下,所述第二目标电子设备的当前任务量为:2×5%+3×7%=31%。
本实施例中,通过预先对各个任务所占用的资源数量进行计算得到预设任务权重列表,从而实现对各第二电子设备当前任务量的准确计算。
可选地,所述至少一个第一任务为所述第二目标电子设备的任务队列中的全部任务;或者,所述至少一个第一任务为所述第二目标电子设备的任务队列中当前正在运行的所有任务。
具体地,由于所述第二目标电子设备可能同步运行任务队列中的全部任务,此时,任务队列中所有任务均需占用第二目标电子设备的资源,因此,在此情况下,需要根据所述第二目标电子设备的任务队列中的全部任务计算所述第二电子设备的任务量。此外,所述第二目标电子设备可能无法同步执行所述任务队列中的全部任务,此时,任务队列中的非正在执行的任务实际上可能并不占用第二目标电子设备的资源,因此,在此情况下,可以根据第二目标电子设备的任务队列中当前正在运行的所有任务计算所述第二目标电子设备的任务量。如此,可以确保所计算出的第二目标电子设备的任务量为所述第二目标电子设备当前资源的实际消耗量。
可选地,所述将所述待调度任务分配至第一目标电子设备之前,还包括:
确定所述待调度任务的占用资源数量;
所述将所述待调度任务分配至所述第一目标电子设备,包括:
在所述第一目标电子设备当前剩余的资源数量大于所述占用资源数量的情况下,将所述待调度任务分配至所述第一目标电子设备。
其中,为了避免用于接收所述待调度任务的第一目标电子设备当前剩余的资源数量不足的情况下,仍将所述待调度任务分配至第一目标电子设备,导致第一目标电子设备由于超负载而出现宕机的问题。本实施例在根据至少两台第二电子设备的当前任务量,确定第一目标电子设备之后,还进一步确定:所述待调度任务的占用资源数量,以及第一目标电子设备当前剩余的资源数量,并在第一目标电子设备当前剩余的资源数量大于所述占用资源数量的情况下,将所述待调度任务分配至所述第一目标电子设备。从而避免由于将待调度任务分配至第一目标电子设备,而导致第一目标电子设备由于超负荷而宕机的问题。
可选地,在所述第一目标电子设备当前剩余的资源数量小于或者等于所述待调度任务的占用资源数量的情况下,暂时不分配所述待调度任务,并实时监测所述至少两台第二电子设备的当前剩余的资源数量;
在第三目标电子设备的当前任务剩余的资源数量大于所述待调度任务的占用资源数量的情况下,将所述待调度任务分配至所述第三目标电子设备,其中,所述第三目标电子设备为所述至少两台第二电子设备中的任一第二电子设备。
由上述论述可知所述第一目标电子设备为所述至少两台第二电子设备中当前任务量最少的第二电子设备,因此,在确定所述第一目标电子设备当前剩余的资源数量小于或者等于所述目标资源数量时,可以推断其他第二电子设备的当前任务量也小于或者等于所述待调度任务的占用资源数量,因此,在此情况下,暂时不分配所述待调度任务。
由于上述各第二电子设备当前剩余的资源数量虽然小于所述待调度任务的占用资源数量,但在所述第二电子设备每完成一个任务,该被完成的任务占用的第二电子设备的资源将得以释放,使得第二电子设备的剩余的资源数量增大。
因此,为了确保所述待调度任务在不影响第二电子设备正常运行的情况下,得以及时分配。本实施例在确定暂时不分配所述待调度任务之后,还进一步监测各所述第二电子设备的当前剩余的资源数量,并在第三目标电子设备的当前任务剩余的资源数量大于所述目标资源数量的情况下,将所述待调度任务分配至所述第三目标电子设备。
上述第一电子设备可以一台集成任务调度功能与数据存储功能于一体的电子设备。此外,上述第一电子设备也可以是由一台任务调度设备和一台存储设备共同组成的设备,其中,任务调度设备用于接收并调度任务,而存储设备用于存储所述至少两台第二电子设备的任务队列、预设权重列表、存活时间等信息。
下文以一具体实施例对上述任务调度方法进行进一步解释说明。请参见图2,图2为与上述任务调度方法相对应的任务调度系统的流程图。本实施例中,所述第一电子设备包括任务调度设备和存储设备,即所述任务调度系统包括任务调度设备、储存设备和至少两个第二电子设备。
所述第二电子设备内存储有任务队列、机器情况和任务数。各所述第二电子设备通过与储存设备建立连接保持,以实现将自身的任务队列同步至所述储存设备。此外,所述储存设备还存储有上述预设权重列表,这样,储存设备可以基于所述预设权重列表以及各第二电子设备的任务队列计算出各第二电子设备的当前任务量。
如图2所示,当所述任务调度设备接收到任务请求时,从所述存储设备中获取各个第二电子设备当前的任务量,并将所述任务请求分配至各所述第二电子设备中当前任务量最少的第二电子设备。
此外,所述储存设备还记录各所述第二电子设备的存活时间,当存储设备记录的第四目标电子设备的存活时间为0,且未接收到第四目标电子设备的同步数据时,则可推断所述第四目标电子设备可能已经宕机,因此,此时将所保存的第四电子设备的任务队列从存储设备上删除,从而避免任务调度设备将任务请求分配至当前处于宕机状态的第四目标电子设备,其中,所述第四目标电子设备为所述至少两个第二电子设备中的任意一个第二电子设备。
上述存活时间可以是人为设定的一个时间值,例如,第二电子设备向存储设备每次同步任务队列之后的存活时间为60秒,即存储设备在接收到该任务队列后,开始计算该任务队列的存活时间为60秒,当超过存活时间时,将该任务队列从存储设备中删除,因此,为了保证所述第二电子设备与存储中心之间的连接保持,所述第二电子设备必须在存活时间内再次将自身的任务队列同步至存储设备。这样,可以实现将第二电子设备的当前状态实时在存储设备中进行更新。
目前,在视频编辑领域,通常需要使用视频编辑器对视频执行合并、裁剪、添加滤镜和转场等视频编辑任务,由于执行此类视频编辑任务需要对视频的每一帧图像进行处理,因此,需要耗费的任务执行器的CPU资源较大。为执行此类视频编辑任务,通常需要部署多台任务执行器共同配合,具体而言,现有技术中,通常是由调度中心接收到视频编辑任务后,按照轮询机制将视频编辑任务调度至相应的任务执行器,然而,由于不同的视频编辑任务其所需要的占用的CPU资源数量可能不一致,从而有可能导致部分任务执行器处于满负载运行时,另外一部分任务执行器的处于空闲状态。可见,现有技术中在对视频编辑任务进行调度时,存在调度不合理的问题。
为此,可以将上述任务调度方法应用于视频编辑任务的调度过程。具体而言,上述待调度任务为视频编辑任务,请参见图3,其具体调度过程如下:
步骤301、在接收到视频编辑任务的情况下,获取至少两台第二电子设备的当前任务量,其中,所述当前任务量为第二电子设备的任务队列中的任务占用的资源总和;
步骤302、基于所述至少两台第二电子设备的当前任务量,在所述至少两台第二电子设备中确定第一目标电子设备;
步骤303、将所述视频编辑任务分配至所述第一目标电子设备。
可选地,所述获取至少两台第二电子设备的当前任务量,包括:
获取第二目标电子设备的任务队列中的至少一个第一任务,所述第二目标电子设备为所述至少两台第二电子设备中的任一第二电子设备;
根据所述至少一个第一任务和预设任务权重列表,计算所述第二目标电子设备的当前任务量,其中,所述预设权重列表包括可运行于所述第二目标电子设备上的任务占用的资源数量。
其中,所述第一任务可以是指视频编辑任务,即所述预设任务权重列表可以预先存储可运行于所述第二电子设备的所有视频编辑任务,以及,视频编辑任务运行于所述第二电子设备时所需占用的资源数量。其中,所述资源数量可以是第二电子设备执行视频编辑任务时,所需占用的第二电子设备的CPU资源数量,该资源数量是根据第二电子设备实际执行视频编辑任务时所需消耗的资源数量确定。例如,为了确定某一视频编辑任务所需占用的资源数量,可以在所述第二电子设备上运行N次所述视频编辑任务,并分别记录所述视频编辑任务N次运行时,所占用的资源数量,然后,求解N次运行所述视频编辑任务所占用的资源的平均值,并将该平均值确定为该第一任务所需占用的资源数量,储存于所述预设任务权重列表中。
本实施例中,通过预先对各个任务所占用的资源数量进行计算得到预设任务权重列表,从而实现对各第二电子设备当前任务量的准确计算。
可选地,所述至少一个第一任务为所述第二目标电子设备的任务队列中的全部任务。
可选地,所述将所述视频编辑任务分配至第一目标电子设备之前,还包括:
确定所述视频编辑任务的占用资源数量;
所述将所述视频编辑任务分配至所述第一目标电子设备,包括:
在所述第一目标电子设备当前剩余的资源数量大于所述视频编辑任务的占用资源数量的情况下,将所述视频编辑任务分配至所述第一目标电子设备。
可选地,所述确定所述视频编辑任务的占用资源数量之后,所述方法还包括:
在所述第一目标电子设备当前剩余的资源数量小于或者等于所述视频编辑任务的占用资源数量的情况下,实时监测所述至少两台第二电子设备的当前剩余的资源数量;
在第三目标电子设备的当前任务剩余的资源数量大于所述视频编辑任务的占用资源数量的情况下,将所述视频编辑任务分配至所述第三目标电子设备,其中,所述第三目标电子设备为所述至少两台第二电子设备中的任一第二电子设备。
可选地,所述第一目标电子设备为所述至少两台第二电子设备中当前任务量最少的第二电子设备。
本实施例中的方法步骤的具体实现方式及有益效果与上述实施例类似,为避免重复,在此不再予以赘述。
请参见图4,图4是本申请实施例提供的一种任务调度装置400,包括:
获取模块401,用于在接收到待调度任务的情况下,获取至少两台第二电子设备的当前任务量,其中,所述当前任务量为第二电子设备的任务队列中的任务占用的资源总和;
第一确定模块402,用于基于所述至少两台第二电子设备的当前任务量,在所述至少两台第二电子设备中确定第一目标电子设备;
分配模块403,用于将所述待调度任务分配至所述第一目标电子设备。
可选地,所述获取模块401,包括:
获取子模块,用于获取第二目标电子设备的任务队列中的至少一个第一任务,所述第二目标电子设备为所述至少两台第二电子设备中的任一第二电子设备;
计算子模块,用于根据所述至少一个第一任务和预设任务权重列表,计算所述第二目标电子设备的当前任务量,其中,所述预设权重列表包括可运行于所述第二目标电子设备上的任务占用的资源数量。
可选地,所述至少一个第一任务为所述第二目标电子设备的任务队列中的全部任务。
可选地,所述装置还包括:
第二确定模块,用于确定所述待调度任务的占用资源数量;
所述分配模块403,具体用于在所述第一目标电子设备当前剩余的资源数量大于所述待调度任务的占用资源数量的情况下,将所述待调度任务分配至所述第一目标电子设备。
可选地,所述装置还包括:
监测模块,用于在所述第一目标电子设备当前剩余的资源数量小于或者等于所述待调度任务的占用资源数量的情况下,实时监测所述至少两台第二电子设备的当前剩余的资源数量;
所述分配模块403,还用于在第三目标电子设备的当前任务剩余的资源数量大于所述待调度任务的占用资源数量的情况下,将所述待调度任务分配至所述第三目标电子设备,其中,所述第三目标电子设备为所述至少两台第二电子设备中的任一第二电子设备。
可选地,所述第一目标电子设备为所述至少两台第二电子设备中当前任务量最少的第二电子设备。
本实施例提供的任务调度装置400能够实现图1-3所示的方法实施例中第一电子设备实现的各个过程,且可以达到相同有益效果,为避免重复,这里不再赘述。
可选地,所述待调度任务为视频编辑任务。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图5所示,是根据本申请实施例的任务调度方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图5所示,该电子设备包括:一个或多个处理器501、存储器502,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图5中以一个处理器501为例。
存储器502即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的任务调度方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的任务调度方法。
存储器502作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的任务调度方法对应的程序指令/模块(例如,附图4所示的获取模块401、第一确定模块402和分配模块403)。处理器501通过运行存储在存储器502中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的任务调度方法。
存储器502可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据任务调度方法的电子设备的使用所创建的数据等。此外,存储器502可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器502可选包括相对于处理器501远程设置的存储器,这些远程存储器可以通过网络连接至任务调度方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
任务调度方法的电子设备还可以包括:输入装置503和输出装置504。处理器501、存储器502、输入装置503和输出装置504可以通过总线或者其他方式连接,图5中以通过总线连接为例。
输入装置503可接收输入的数字或字符信息,以及产生与任务调度方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置504可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,在接收到待调度任务的情况下,先获取可执行该待调度任务的各个第二电子设备的当前任务量,并基于各第二电子设备的当前任务量确定第一目标电子设备,然后将所述待调度任务分配至第一目标电子设备。本申请通过基于至少两台第二电子设备的当前任务量,确定用于接收所述待调度任务的第一目标电子设备,有利于保证各第二电子设备上的任务量始终处于相对均衡的状态,从而提高了任务调度的合理性。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (16)
1.一种任务调度方法,应用于第一电子设备,其特征在于,包括:
在接收到待调度任务的情况下,获取至少两台第二电子设备的当前任务量,其中,所述当前任务量为第二电子设备的任务队列中的任务占用的资源总和;
基于所述至少两台第二电子设备的当前任务量,在所述至少两台第二电子设备中确定第一目标电子设备;
将所述待调度任务分配至所述第一目标电子设备;
所述至少两台第二电子设备具有编号,其中,所述至少两台第二电子设备中,老化程度越低的第二电子设备的编号越靠前;所述基于所述至少两台第二电子设备的当前任务量,在所述至少两台第二电子设备中确定第一目标电子设备,包括:
从所述至少两台第二电子设备中筛选出当前任务量低于第一预设值的第二电子设备,将所筛选出的第二电子设备中编号最靠前的第二电子设备确定为所述第一目标电子设备。
2.根据权利要求1所述的方法,其特征在于,所述获取至少两台第二电子设备的当前任务量,包括:
获取第二目标电子设备的任务队列中的至少一个第一任务,所述第二目标电子设备为所述至少两台第二电子设备中的任一第二电子设备;
根据所述至少一个第一任务和预设任务权重列表,计算所述第二目标电子设备的当前任务量,其中,所述预设权重列表包括可运行于所述第二目标电子设备上的任务占用的资源数量。
3.根据权利要求2所述的方法,其特征在于,所述至少一个第一任务为所述第二目标电子设备的任务队列中的全部任务。
4.根据权利要求1所述的方法,其特征在于,所述将所述待调度任务分配至第一目标电子设备之前,还包括:
确定所述待调度任务的占用资源数量;
所述将所述待调度任务分配至所述第一目标电子设备,包括:
在所述第一目标电子设备当前剩余的资源数量大于所述待调度任务的占用资源数量的情况下,将所述待调度任务分配至所述第一目标电子设备。
5.根据权利要求4所述的方法,其特征在于,所述确定所述待调度任务的占用资源数量之后,所述方法还包括:
在所述第一目标电子设备当前剩余的资源数量小于或者等于所述待调度任务的占用资源数量的情况下,实时监测所述至少两台第二电子设备的当前剩余的资源数量;
在第三目标电子设备的当前任务剩余的资源数量大于所述待调度任务的占用资源数量的情况下,将所述待调度任务分配至所述第三目标电子设备,其中,所述第三目标电子设备为所述至少两台第二电子设备中的任一第二电子设备。
6.根据权利要求1所述的方法,其特征在于,所述第一目标电子设备为所述至少两台第二电子设备中当前任务量最少的第二电子设备。
7.根据权利要求1所述的方法,其特征在于,所述待调度任务为视频编辑任务。
8.一种任务调度装置,其特征在于,包括:
获取模块,用于在接收到待调度任务的情况下,获取至少两台第二电子设备的当前任务量,其中,所述当前任务量为第二电子设备的任务队列中的任务占用的资源总和;
第一确定模块,用于基于所述至少两台第二电子设备的当前任务量,在所述至少两台第二电子设备中确定第一目标电子设备;
分配模块,用于将所述待调度任务分配至所述第一目标电子设备;
所述至少两台第二电子设备具有编号,其中,所述至少两台第二电子设备中,老化程度越低的第二电子设备的编号越靠前;所述基于所述至少两台第二电子设备的当前任务量,在所述至少两台第二电子设备中确定第一目标电子设备,包括:
从所述至少两台第二电子设备中筛选出当前任务量低于第一预设值的第二电子设备,将所筛选出的第二电子设备中编号最靠前的第二电子设备确定为所述第一目标电子设备。
9.根据权利要求8所述的装置,其特征在于,所述获取模块,包括:
获取子模块,用于获取第二目标电子设备的任务队列中的至少一个第一任务,所述第二目标电子设备为所述至少两台第二电子设备中的任一第二电子设备;
计算子模块,用于根据所述至少一个第一任务和预设任务权重列表,计算所述第二目标电子设备的当前任务量,其中,所述预设权重列表包括可运行于所述第二目标电子设备上的任务占用的资源数量。
10.根据权利要求9所述的装置,其特征在于,所述至少一个第一任务为所述第二目标电子设备的任务队列中的全部任务。
11.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第二确定模块,用于确定所述待调度任务的占用资源数量;
所述分配模块,具体用于在所述第一目标电子设备当前剩余的资源数量大于所述待调度任务的占用资源数量的情况下,将所述待调度任务分配至所述第一目标电子设备。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括:
监测模块,用于在所述第一目标电子设备当前剩余的资源数量小于或者等于所述待调度任务的占用资源数量的情况下,实时监测所述至少两台第二电子设备的当前剩余的资源数量;
所述分配模块,还用于在第三目标电子设备的当前任务剩余的资源数量大于所述待调度任务的占用资源数量的情况下,将所述待调度任务分配至所述第三目标电子设备,其中,所述第三目标电子设备为所述至少两台第二电子设备中的任一第二电子设备。
13.根据权利要求8所述的装置,其特征在于,所述第一目标电子设备为所述至少两台第二电子设备中当前任务量最少的第二电子设备。
14.根据权利要求8所述的装置,其特征在于,所述待调度任务为视频编辑任务。
15.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。
16.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010335543.4A CN111459645B (zh) | 2020-04-22 | 2020-04-22 | 一种任务调度方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010335543.4A CN111459645B (zh) | 2020-04-22 | 2020-04-22 | 一种任务调度方法、装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111459645A CN111459645A (zh) | 2020-07-28 |
CN111459645B true CN111459645B (zh) | 2023-06-30 |
Family
ID=71684665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010335543.4A Active CN111459645B (zh) | 2020-04-22 | 2020-04-22 | 一种任务调度方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111459645B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112286663B (zh) * | 2020-10-30 | 2023-09-01 | 中国工商银行股份有限公司 | 任务调度方法及装置 |
CN112527482A (zh) * | 2020-12-14 | 2021-03-19 | 中国联合网络通信集团有限公司 | 基于移动边缘云平台的任务管理方法及系统 |
CN113407322B (zh) * | 2021-06-21 | 2022-05-06 | 平安国际智慧城市科技股份有限公司 | 多终端的任务分配方法、装置、电子设备及可读存储介质 |
CN116501506B (zh) * | 2023-06-27 | 2023-09-12 | 苏州仰思坪半导体有限公司 | 一种资源轮询仲裁方法、装置、介质及计算设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014188643A1 (ja) * | 2013-05-24 | 2014-11-27 | 日本電気株式会社 | スケジュールシステム、スケジュール方法、及び、記録媒体 |
CN109814985A (zh) * | 2017-11-20 | 2019-05-28 | 杭州华为数字技术有限公司 | 一种任务调度方法及调度器、计算设备、系统 |
CN110837410A (zh) * | 2019-10-30 | 2020-02-25 | 北京奇艺世纪科技有限公司 | 任务调度方法、装置、电子设备及计算机可读存储介质 |
CN111026518A (zh) * | 2018-10-10 | 2020-04-17 | 上海寒武纪信息科技有限公司 | 任务调度方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014078214A (ja) * | 2012-09-20 | 2014-05-01 | Nec Corp | スケジュールシステム、スケジュール方法、スケジュールプログラム、及び、オペレーティングシステム |
CN109508232A (zh) * | 2018-11-26 | 2019-03-22 | 北京大米科技有限公司 | 一种任务调度管理的方法、装置及电子设备 |
CN110750350B (zh) * | 2019-10-29 | 2022-08-16 | 广东浪潮大数据研究有限公司 | 一种大资源调度方法、系统、装置及可读存储介质 |
-
2020
- 2020-04-22 CN CN202010335543.4A patent/CN111459645B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014188643A1 (ja) * | 2013-05-24 | 2014-11-27 | 日本電気株式会社 | スケジュールシステム、スケジュール方法、及び、記録媒体 |
CN109814985A (zh) * | 2017-11-20 | 2019-05-28 | 杭州华为数字技术有限公司 | 一种任务调度方法及调度器、计算设备、系统 |
CN111026518A (zh) * | 2018-10-10 | 2020-04-17 | 上海寒武纪信息科技有限公司 | 任务调度方法 |
CN110837410A (zh) * | 2019-10-30 | 2020-02-25 | 北京奇艺世纪科技有限公司 | 任务调度方法、装置、电子设备及计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
"云环境下基于偏好的资源公平分配策略";贺智明 等;《计算机工程与科学》;第39卷(第11期);1991-1999 * |
Younge A J 等."Efficient resource management for Cloud computing environments".《International Green Computing Conference 2010》.2010,357-364. * |
Also Published As
Publication number | Publication date |
---|---|
CN111459645A (zh) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111459645B (zh) | 一种任务调度方法、装置和电子设备 | |
CN111694646B (zh) | 资源调度方法、装置、电子设备及计算机可读存储介质 | |
CN112000473A (zh) | 深度学习模型的分布式训练方法以及装置 | |
CN112486648A (zh) | 任务调度方法、装置、系统、电子设备和存储介质 | |
CN111738446B (zh) | 深度学习推理引擎的调度方法、装置、设备和介质 | |
CN112437018A (zh) | 分布式集群的流量控制方法、装置、设备和存储介质 | |
CN113157409A (zh) | 基于ai的rpa任务调度方法、装置、电子设备及存储介质 | |
CN110688229B (zh) | 任务处理方法和装置 | |
CN115080209A (zh) | 系统资源调度方法、装置、电子设备及存储介质 | |
CN112311597A (zh) | 消息推送方法和装置 | |
CN111913809A (zh) | 多线程场景下的任务执行方法、装置、设备和存储介质 | |
CN114356547B (zh) | 基于处理器虚拟化环境的低优阻塞方法及装置 | |
WO2022199204A1 (zh) | 用于确定资源的方法和装置 | |
CN111782341A (zh) | 用于管理集群的方法和装置 | |
CN112860401A (zh) | 任务调度方法、装置、电子设备和存储介质 | |
CN111858030A (zh) | 作业的资源处理方法、装置、电子设备及可读存储介质 | |
CN112306646A (zh) | 用于处理事务的方法、装置、设备及可读存储介质 | |
CN111782147A (zh) | 用于集群扩缩容的方法和装置 | |
CN111782357A (zh) | 标签控制方法及装置、电子设备和可读存储介质 | |
CN113971082A (zh) | 任务调度方法、装置、设备、介质及产品 | |
CN113971083A (zh) | 任务调度方法、装置、设备、介质及产品 | |
CN112698934B (zh) | 资源调度方法和装置、pmd调度装置、电子设备、存储介质 | |
CN111741053A (zh) | 数据预下载方法、装置、服务器、终端及存储介质 | |
CN112416593A (zh) | 资源管理方法及装置、电子设备、计算机可读介质 | |
CN111752695A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |