CN109710463A - 一种任务调度方法及装置 - Google Patents
一种任务调度方法及装置 Download PDFInfo
- Publication number
- CN109710463A CN109710463A CN201811607528.XA CN201811607528A CN109710463A CN 109710463 A CN109710463 A CN 109710463A CN 201811607528 A CN201811607528 A CN 201811607528A CN 109710463 A CN109710463 A CN 109710463A
- Authority
- CN
- China
- Prior art keywords
- task
- delay machine
- machine situation
- completion
- occur
- 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
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种任务调度方法及装置,通过在任务调度过程中,确定出现宕机状况的进程;在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行。本申请将在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行,保证具有固定执行时间的任务,在宕机状况出现之后,能够立即被重新调度到未出现宕机状况的进程中执行,无需等待出现宕机状况的进程的重新启动,从而不会因错过执行时间而被放弃,保证任务的顺利执行。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种任务调度方法及装置。
背景技术
任务调度就是将待执行的任务调度到不同的进程上去执行,但是由于网络或系统等原因,任务调度过程中经常会出现进程宕机的情况,进程宕机指的是进程运行过程中出现严重故障,无法继续执行任务。当出现进程宕机的情况时,所有的任务将无法进行正常调度,只有等待故障消除,宕机进程被重新启动后,才能够继续执行任务调度。
然而对于许多任务有固定的执行时间,进程宕机后,由于需要一定的时间等待进程被重新启动,等待过程中有可能会错过任务的执行时间,而进程被重新启动之后,错过执行时间的任务则会被放弃执行。因此,在进程宕机情况下,如何保证任务的顺利执行,成为目前亟待解决的技术问题。
发明内容
有鉴于此,本发明实施例提供一种任务调度方法及装置,能够在进程宕机情况下,保证任务的顺利执行。
一种任务调度方法,包括:
在任务调度过程中,确定出现宕机状况的进程;
在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;
将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行。
优选的,所述在任务调度过程中,确定出现宕机状况的进程的过程包括:
按照预设心跳检测规则,对任务调度过程中的所有进程进行心跳检测,得到心跳检测结果;
依据所述心跳检测结果,确定出现宕机状况的进程。
优选的,在确定出现宕机状况的进程之前,还包括:
创建任务;
依据所创建的任务的特性,判断所创建的任务是否是在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务;
如果是,则将所创建的在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务,确定为目标任务。
优选的,所述在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务的过程包括:
在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,但还未被执行的目标任务;
或者;
在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,并正在被执行的目标任务。
优选的,所述将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行的过程包括:
将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并重新执行;
或者;
获取在宕机状况出现之时,还未被执行完成的任务的执行进度;
将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并依据在宕机状况出现之时,还未被执行完成的任务的执行进度,对所述在宕机状况出现之时,还未被执行完成的任务继续执行。
一种任务调度装置,包括:
宕机进程确定模块,用于在任务调度过程中,确定出现宕机状况的进程;
任务获取模块,用于在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;
任务调度模块,用于将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行。
优选的,所述宕机进程确定模块包括:
心跳检测模块,用于按照预设心跳检测规则,对任务调度过程中的所有进程进行心跳检测,得到心跳检测结果;
宕机进程确定子模块,用于依据所述心跳检测结果,确定出现宕机状况的进程。
优选的,还包括:
任务创建模块,用于创建任务;
任务判断模块,用于依据所创建的任务的特性,判断所创建的任务是否是在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务;
目标任务确定模块,用于在任务判断模块判断出所创建的任务是在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务的情况下,将所创建的在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务,确定为目标任务。
优选的,所述任务获取模块包括:
第一任务获取子模块,用于在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,但还未被执行的目标任务;
或者;
第二任务获取子模块,用于在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,并正在被执行的目标任务。
优选的,所述任务调度模块包括:
第一任务调度子模块,用于将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并重新执行;
或者;
执行进度获取模块,用于获取在宕机状况出现之时,还未被执行完成的任务的执行进度;
第二任务调度子模块,用于将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并依据在宕机状况出现之时,还未被执行完成的任务的执行进度,对所述在宕机状况出现之时,还未被执行完成的任务继续执行。
基于上述技术方案,本发明实施例公开了一种任务调度方法及装置,通过在任务调度过程中,确定出现宕机状况的进程;在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行。由此可知,本发明实施例中,将在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行,保证具有固定执行时间的任务,在宕机状况出现之后,能够立即被重新调度到未出现宕机状况的进程中执行,无需等待出现宕机状况的进程的重新启动,从而不会因错过执行时间而被放弃,保证任务的顺利执行。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种任务调度方法的流程图;
图2为本发明实施例提供的一种进程与任务调度服务器之间的关系示意图;
图3为本发明实施例提供的一种进程中运行的任务状况示意图;
图4为本发明实施例提供的另一种任务调度方法的流程图;
图5为本发明实施例提供的另一种任务调度方法的流程图;
图6为本发明实施例提供的另一种任务调度方法的流程图;
图7为本发明实施例提供的一种任务调度装置的结构框图;
图8为本发明实施例提供的一种任务调度装置的硬件结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出了一种任务调度方法的流程图,该方法可由任务调度服务器实现,参照图1,所述方法可以包括:
步骤S100、在任务调度过程中,确定出现宕机状况的进程;
本发明实施例中公开的在任务调度过程中,确定出现宕机状况的进程的过程包括:按照预设心跳检测规则,对任务调度过程中的所有进程进行心跳检测,得到心跳检测结果;依据所述心跳检测结果,确定出现宕机状况的进程。
具体的,本发明实施例中可以向各进程发送心跳检测信号,各进程依据接收到的心跳检测信号,向任务调度服务器返回心跳响应信号,返回的心跳响应信号作为心跳检测结果,任务调度服务器则依据接收到的心跳响应信号判断进程是否出现宕机状况,如果任务调度服务器在预设心跳检测时间内没有接收到某一进程返回的心跳响应信号,则判定该进程出现宕机状况,其中,预设心跳检测时间可由技术人员进行设定,本发明实施例不做具体限定。
可选的,如图2所示的进程与任务调度服务器之间的关系示意图,本发明实施例中的各进程注册到任务调度服务器之后,还可以按照预设心跳检测时间间隔,向任务调度服务器主动发送心跳响应信号,预设心跳检测时间间隔可以为30s等,本发明实施例不做具体限定,如图2中的进程1-3每隔30s向任务调度服务器发送心跳响应信号,但是任务调度服务器在距离上次接收到进程4发送的心跳响应信号之后,过了30s的时间,仍然未接收到进程4发送的心跳响应信号,则确定进程4出现宕机状况。
步骤S110、在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;
需要说明的是,由于进程先将任务加载进来,再去执行任务,因此,在宕机状况出现之时,还未被执行完成的任务可以包括:在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,但还未被执行的任务;以及,在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,并正在被执行的任务。
相应的,所述在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务的过程包括:在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,但还未被执行的任务;或者;在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,并正在被执行的任务。
本发明实施例中,在进行任务调度过程中,会根据任务的调度情况对应生成一条调度记录,任务在被加载到该调度进程中之后,该任务对应的调度记录标记为ACQUIRED,含义为已被获取;在进程被加载进来之后,执行任务过程中,该任务对应的调度记录标记为BLOCKED,含义为正在执行;当任务被执行完成后,该任务对应的调度记录标记为COMPLETE,含义为执行完成。如果该任务调度进程出现进程宕机的情况,接管的调度进程首先会去处理由于宕机而退服的进程中还未被执行完成(调度记录为ACQUIRED以及BLOCKED)的任务,这些还未被执行完成的任务需要被接管的调度进程立即进行调度执行,并且,只重新调度执行一次。
基于此,本发明实施例中可以依据任务对应的调度记录,来确定在宕机状况出现之时,还未被执行完成的任务。
步骤S120、将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行。
在宕机状况出现之时,还未被执行完成的任务,可以重新调度到未出现宕机状况的至少一个进程中执行。
结合图3所示的进程中运行的任务状况示意图,任务调度服务器中目前注册有进程1、进程2以及进程3,进程1上运行的任务有JOB1.1,JOB1.2,JOB1.3,JOB1.4等;进程2上运行的任务有JOB2.1,JOB2.2,JOB2.3等;进程3上运行的任务有JOB3.1,JOB3.2,JOB3.3等。
当进程1出现宕机状况之时,则将进程1上还未被执行完成的任务JOB1.1以及JOB1.4重新调度到进程2上执行,并将进程1上还未被执行完成的任务JOB1.2以及JOB1.3重新调度到进程3上执行。
本发明实施例公开了一种任务调度方法,通过在任务调度过程中,确定出现宕机状况的进程;在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行。由此可知,本发明实施例中,将在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行,保证具有固定执行时间的任务,在宕机状况出现之后,能够立即被重新调度到未出现宕机状况的进程中执行,无需等待出现宕机状况的进程的重新启动,从而不会因错过执行时间而被放弃,保证任务的顺利执行。
参照图4,图4示出了另一种任务调度方法的流程图,该方法可由任务调度服务器实现,所述方法可以包括:
步骤S200、创建任务;
步骤S210、依据所创建的任务的特性,判断所创建的任务是否是在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务;如果是,则执行步骤S220;
需要说明的是,有些任务在任务执行所在的进程出现宕机状况之后,还可以被重新调度到未出现宕机状况的进程中执行;有些任务在任务执行所在的进程出现宕机状况之后,即消失或者任务出错,则不可以被重新调度到未出现宕机状况的进程中执行。所创建的任务是否是在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务,则需要依据所创建的任务的特性来决定。
步骤S220、将所创建的在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务,确定为目标任务;
本发明实施例中可以将所创建的在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务,确定为目标任务,并对该目标任务进行标记。
步骤S230、在任务调度过程中,确定出现宕机状况的进程;
步骤S240、在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的目标任务;
在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的目标任务的过程包括:在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,但还未被执行的目标任务;或者;在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,并正在被执行的目标任务。
步骤S250、将所述在宕机状况出现之时,还未被执行完成的目标任务,重新调度到未出现宕机状况的进程中执行。
本发明实施例中,通过任务标记来确定,在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的目标任务,进而将在宕机状况出现之时,还未被执行完成的目标任务,重新调度到未出现宕机状况的进程中执行,保证具有固定执行时间的目标任务,在宕机状况出现之后,能够立即被重新调度到未出现宕机状况的进程中执行,无需等待出现宕机状况的进程的重新启动,从而不会因错过执行时间而被放弃,保证任务的顺利执行。
将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行可以采用不同的执行方式,基于此,参照图5,图5示出了另一种任务调度方法的流程图,该方法可由任务调度服务器实现,所述方法可以包括:
步骤S300、在任务调度过程中,确定出现宕机状况的进程;
步骤S310、在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;
步骤S320、将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并重新执行。
本发明实施例中,对于任务执行时间较短;或者在宕机状况出现之时,任务刚加载到进程中,但还未执行;或者宕机状况出现的时间点距离任务开始执行的时间点较近的情况下,可以将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并重新执行,并仅执行一次,无需等待出现宕机状况的进程的重新启动,从而不会因错过执行时间而被放弃,保证任务的顺利执行。
优先的,参照图6,图6示出了另一种任务调度方法的流程图,该方法可由任务调度服务器实现,所述方法可以包括:
步骤S400、在任务调度过程中,确定出现宕机状况的进程;
步骤S410、在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;
步骤S420、获取在宕机状况出现之时,还未被执行完成的任务的执行进度;
执行进度可以采用任务量执行的百分比来表示,还可以采用任务执行时间的百分比来表示,本发明实施例不做具体限制。
步骤S430、将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并依据在宕机状况出现之时,还未被执行完成的任务的执行进度,对所述在宕机状况出现之时,还未被执行完成的任务继续执行。
本发明实施例中,对于任务执行时间较长;或者宕机状况出现的时间点距离任务开始执行的时间点较远的情况下,可以依据依据在宕机状况出现之时,还未被执行完成的任务的执行进度,对所述在宕机状况出现之时,还未被执行完成的任务继续执行。
在任务执行过程中,进程会实时记录任务的执行进度,并将执行进度实时上传至任务调度服务器中,在进程出现宕机之后,则会终止上传执行进度,任务调度服务器会将最后收到的任务的执行进度以及未被执行完成的任务一同调度到未出现宕机状况的进程中,未出现宕机状况的进程则会依据任务的执行进度,对未被执行完成的任务在中断的节点处,继续执行。
下面对本发明实施例提供的用药信息监控系统进行介绍,下文描述的用药信息监控系统可与上文用药信息监控方法相互对应参照。
图7为本发明实施例提供的任务调度装置的结构框图,参照图7,该任务调度装置可以包括:
宕机进程确定模块100,用于在任务调度过程中,确定出现宕机状况的进程;
任务获取模块110,用于在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;
任务调度模块120,用于将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行。
所述宕机进程确定模块包括:
心跳检测模块,用于按照预设心跳检测规则,对任务调度过程中的所有进程进行心跳检测,得到心跳检测结果;
宕机进程确定子模块,用于依据所述心跳检测结果,确定出现宕机状况的进程。
还包括:
任务创建模块,用于创建任务;
任务判断模块,用于依据所创建的任务的特性,判断所创建的任务是否是在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务;
目标任务确定模块,用于在任务判断模块判断出所创建的任务是在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务的情况下,将所创建的在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务,确定为目标任务。
所述任务获取模块包括:
第一任务获取子模块,用于在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,但还未被执行的目标任务;
或者;
第二任务获取子模块,用于在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,并正在被执行的目标任务。
所述任务调度模块包括:
第一任务调度子模块,用于将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并重新执行;
或者;
执行进度获取模块,用于获取在宕机状况出现之时,还未被执行完成的任务的执行进度;
第二任务调度子模块,用于将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并依据在宕机状况出现之时,还未被执行完成的任务的执行进度,对所述在宕机状况出现之时,还未被执行完成的任务继续执行。
可选的,任务调度装置可以为任务调度服务器,即可以为硬件设备,上文描述的模块可以设置于任务调度装置内的功能模块。图8示出了任务调度装置的硬件结构框图,参照图8,任务调度装置可以包括:处理器1,通信接口2,存储器3和通信总线4;其中处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信;可选的,通信接口2可以为通信模块的接口,如GSM模块的接口;
处理器1,用于执行程序;存储器3,用于存放程序;程序可以包括程序代码,所述程序代码包括计算机操作指令;
处理器1可能是一个中央处理器CPU,或者是特定集成电路ASIC
(Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路;存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
其中,程序可具体用于:
在任务调度过程中,确定出现宕机状况的进程;
在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;
将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行。
综上所述:
本发明实施例公开了一种任务调度方法及装置,通过在任务调度过程中,确定出现宕机状况的进程;在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行。由此可知,本发明实施例中,将在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行,保证具有固定执行时间的任务,在宕机状况出现之后,能够立即被重新调度到未出现宕机状况的进程中执行,无需等待出现宕机状况的进程的重新启动,从而不会因错过执行时间而被放弃,保证任务的顺利执行。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种任务调度方法,其特征在于,包括:
在任务调度过程中,确定出现宕机状况的进程;
在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;
将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行。
2.根据权利要求1所述的方法,其特征在于,所述在任务调度过程中,确定出现宕机状况的进程的过程包括:
按照预设心跳检测规则,对任务调度过程中的所有进程进行心跳检测,得到心跳检测结果;
依据所述心跳检测结果,确定出现宕机状况的进程。
3.根据权利要求1所述的方法,其特征在于,在确定出现宕机状况的进程之前,还包括:
创建任务;
依据所创建的任务的特性,判断所创建的任务是否是在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务;
如果是,则将所创建的在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务,确定为目标任务。
4.根据权利要求3所述的方法,其特征在于,所述在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务的过程包括:
在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,但还未被执行的目标任务;
或者;
在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,并正在被执行的目标任务。
5.根据权利要求根据权利要求1所述的方法,其特征在于,所述将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行的过程包括:
将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并重新执行;
或者;
获取在宕机状况出现之时,还未被执行完成的任务的执行进度;
将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并依据在宕机状况出现之时,还未被执行完成的任务的执行进度,对所述在宕机状况出现之时,还未被执行完成的任务继续执行。
6.一种任务调度装置,其特征在于,包括:
宕机进程确定模块,用于在任务调度过程中,确定出现宕机状况的进程;
任务获取模块,用于在出现宕机状况的进程中,获取在宕机状况出现之时,还未被执行完成的任务;
任务调度模块,用于将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中执行。
7.根据权利要求6所述的装置,其特征在于,所述宕机进程确定模块包括:
心跳检测模块,用于按照预设心跳检测规则,对任务调度过程中的所有进程进行心跳检测,得到心跳检测结果;
宕机进程确定子模块,用于依据所述心跳检测结果,确定出现宕机状况的进程。
8.根据权利要求6所述的装置,其特征在于,还包括:
任务创建模块,用于创建任务;
任务判断模块,用于依据所创建的任务的特性,判断所创建的任务是否是在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务;
目标任务确定模块,用于在任务判断模块判断出所创建的任务是在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务的情况下,将所创建的在任务执行所在的进程出现宕机状况之后,允许被重新调度到未出现宕机状况的进程中执行的任务,确定为目标任务。
9.根据权利要求8所述的装置,其特征在于,所述任务获取模块包括:
第一任务获取子模块,用于在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,但还未被执行的目标任务;
或者;
第二任务获取子模块,用于在出现宕机状况的进程中,获取在宕机状况出现之时,已被加载到所述出现宕机状况的进程中,并正在被执行的目标任务。
10.根据权利要求6所述的装置,其特征在于,所述任务调度模块包括:
第一任务调度子模块,用于将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并重新执行;
或者;
执行进度获取模块,用于获取在宕机状况出现之时,还未被执行完成的任务的执行进度;
第二任务调度子模块,用于将所述在宕机状况出现之时,还未被执行完成的任务,重新调度到未出现宕机状况的进程中,并依据在宕机状况出现之时,还未被执行完成的任务的执行进度,对所述在宕机状况出现之时,还未被执行完成的任务继续执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811607528.XA CN109710463A (zh) | 2018-12-27 | 2018-12-27 | 一种任务调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811607528.XA CN109710463A (zh) | 2018-12-27 | 2018-12-27 | 一种任务调度方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109710463A true CN109710463A (zh) | 2019-05-03 |
Family
ID=66258480
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811607528.XA Pending CN109710463A (zh) | 2018-12-27 | 2018-12-27 | 一种任务调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109710463A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0473444A2 (en) * | 1990-08-31 | 1992-03-04 | Texas Instruments Incorporated | Scheduling system for multiprocessor operating system |
CN103593236A (zh) * | 2013-11-14 | 2014-02-19 | 华为技术有限公司 | 一种业务流程调度的计算机设备、方法和装置 |
CN105373431A (zh) * | 2015-10-29 | 2016-03-02 | 武汉联影医疗科技有限公司 | 一种计算机系统资源的管理方法及计算机资源管理系统 |
CN106462455A (zh) * | 2015-06-16 | 2017-02-22 | 华为技术有限公司 | 进程接替的方法和装置 |
CN106789141A (zh) * | 2015-11-24 | 2017-05-31 | 阿里巴巴集团控股有限公司 | 一种网关设备故障处理方法及装置 |
CN108415766A (zh) * | 2018-03-06 | 2018-08-17 | 洛阳理工学院 | 一种渲染任务动态调度方法 |
-
2018
- 2018-12-27 CN CN201811607528.XA patent/CN109710463A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0473444A2 (en) * | 1990-08-31 | 1992-03-04 | Texas Instruments Incorporated | Scheduling system for multiprocessor operating system |
CN103593236A (zh) * | 2013-11-14 | 2014-02-19 | 华为技术有限公司 | 一种业务流程调度的计算机设备、方法和装置 |
CN106462455A (zh) * | 2015-06-16 | 2017-02-22 | 华为技术有限公司 | 进程接替的方法和装置 |
CN105373431A (zh) * | 2015-10-29 | 2016-03-02 | 武汉联影医疗科技有限公司 | 一种计算机系统资源的管理方法及计算机资源管理系统 |
CN106789141A (zh) * | 2015-11-24 | 2017-05-31 | 阿里巴巴集团控股有限公司 | 一种网关设备故障处理方法及装置 |
CN108415766A (zh) * | 2018-03-06 | 2018-08-17 | 洛阳理工学院 | 一种渲染任务动态调度方法 |
Non-Patent Citations (2)
Title |
---|
程文娟: "《嵌入式实时操作系统µC/OS-Ⅱ教程 第2版》", 30 April 2017, 西安电子科技大学出版社 * |
轧制技术及连轧自动化国家重点实验室: "《850mm不锈钢两级自动化控制系统研究与应用》", 30 September 2014, 冶金工业出版社 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111367679B (zh) | 人工智能算力资源复用方法及装置 | |
CN109814998A (zh) | 一种多进程任务调度的方法及装置 | |
CN109298990A (zh) | 日志存储方法、装置、计算机设备及存储介质 | |
CN111782360A (zh) | 分布式任务调度方法及装置 | |
WO2014031454A2 (en) | Transaction-level health monitoring of online services | |
CN104156263A (zh) | 芯片部件管理任务中断方法、芯片及包括所述芯片的组件 | |
US10067793B2 (en) | Data processing method and apparatus for executing task code using reservation instruction and release instruction | |
WO2020121292A1 (en) | Efficient data processing in a serverless environment | |
CN110648047A (zh) | 任务调度方法、装置、系统和存储介质 | |
TWI498820B (zh) | 具有用於分支錯誤預測之第二跳躍執行單元的處理器 | |
CN110968410B (zh) | 任务失败重试方法、装置、计算机设备及存储介质 | |
CN111831408A (zh) | 异步任务处理方法、装置、电子设备及介质 | |
CN108509264B (zh) | 超时任务调度系统及方法 | |
CN109710463A (zh) | 一种任务调度方法及装置 | |
TWI242157B (en) | Method and apparatus for implementing two-tiered thread state multithreading support with high clock rate | |
CN116302423A (zh) | 一种面向云管理平台的分布式任务调度方法及系统 | |
CN105589787A (zh) | 应用程序的健康检查方法及健康检查系统 | |
Seifzadeh et al. | A method for dynamic software updating in real-time systems | |
CN105868957A (zh) | 一种持续集成方法及装置 | |
JP2823520B2 (ja) | リアルタイムアプリケーションタスクスケジューリング及び処理システム | |
CN111638965B (zh) | 基于栅栏复制与握手的命令队列间栅栏同步方法及系统 | |
JP5387083B2 (ja) | ジョブ管理システムおよび方法 | |
CN113377515A (zh) | 一种Kubernetes资源的任务预调度方法 | |
CN113867902B (zh) | 一种控制程序执行的方法、装置及存储介质 | |
CN109726012A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190503 |
|
RJ01 | Rejection of invention patent application after publication |