CN110096342A - 任务处理方法、装置、服务器和存储介质 - Google Patents

任务处理方法、装置、服务器和存储介质 Download PDF

Info

Publication number
CN110096342A
CN110096342A CN201910380106.1A CN201910380106A CN110096342A CN 110096342 A CN110096342 A CN 110096342A CN 201910380106 A CN201910380106 A CN 201910380106A CN 110096342 A CN110096342 A CN 110096342A
Authority
CN
China
Prior art keywords
task
chain
chain type
postposition
implementing result
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
Application number
CN201910380106.1A
Other languages
English (en)
Inventor
杨尚京
王枫
谭仕朝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Lexin Software Technology Co Ltd
Original Assignee
Shenzhen Lexin Software Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Lexin Software Technology Co Ltd filed Critical Shenzhen Lexin Software Technology Co Ltd
Priority to CN201910380106.1A priority Critical patent/CN110096342A/zh
Publication of CN110096342A publication Critical patent/CN110096342A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

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为本发明实施例一提供的一种任务处理方法的流程图,本实施例可适用于以任务调度平台为调度中心,对各个节点所执行的链式任务进行主动调度的情况,该方法可由一种任务处理装置来执行,该装置可以采用软件和/或硬件的方式实现,优选是配置于任务调度平台。该方法具体包括如下:
步骤110、接收任务链中当前链式任务关联的至少一个执行节点上报的执行结果。
在本发明具体实施例中,任务链是指由一系列具有执行顺序的任务构成的任务执行链,其中,任务链中各个独立的任务在本实施例中称之为链式任务,各个链式任务之间可以采用相同的执行节点来执行,也可以采用不同的执行节点来执行。同一链式任何还可以具体拆分为多个分片任务,供多个执行节点并行执行。其中,执行节点可以为计算机等具有任务处理能力的设备。
在任务链中,相邻链式任务之间具有执行状态的控制关系,即当前一链式任务即前置任务执行完成时,后一链式任务即后置任务才能启动执行。进一步的,相邻链式任务之间还可以具有逻辑控制关系,即后置任务关联的执行节点在执行后置任务时,首先依赖于前置任务的执行结果,控制是否继续执行后置任务,并返回执行状态,以便于后续任务的调度执行。
本实施例中,任务链中包括至少两个链式任务,各链式任务包括至少一个分片任务,每个分片任务关联有一个执行节点来执行。相应的,一个链式任务关联有至少一个执行节点。其中,每个分片任务包括两个逻辑接口,即用于启动任务的程序入口以及返回执行结果的返回接口。
具体的,当前链式任务是指任务链中当前唯一正在执行的任务,或者是执行完成且还未调度下一个链式任务的任务。若当前链式任务执行完成,则通过任务的逻辑接口,当前链式任务关联的至少一个执行节点向任务调度平台上报执行结果,以使任务调度平台可以接收任务调度平台的执行结果。其中,该执行结果是指该执行节点所执行的链式任务或分片任务的执行结果。该执行结果可以为任务执行的数据信息,例如分片任务的执行结果为5;也可以为任务的执行状态信息,例如任务已执行完成。其中,若执行结果为正常的数据信息或状态信息,则说明任务执行成功;若执行结果为报错或空,则说明任务执行失败。
步骤120、依据任务链注册信息以及执行结果,确定当前链式任务的后置任务,并调度后置任务关联的至少一个执行节点执行后置任务。
在本发明具体实施例中,任务链注册信息是指在任务链执行之前,在线向任务调度平台注册的任务链信息,以供任务调度平台依据任务链注册信息,对链式任务信息进行统一管理,并结合链式任务的执行结果,对各链式任务关联的执行节点进行统一调度管理,以此来执行链式任务。在任务链执行之前,任务调度平台还可以支持任务链信息的在线修改和下线等,从而重新进行任务链信息的注册,在线调整任务链。
其中,任务链注册信息中可以包括任务链的初始调度时间。任务链的初始调度时间是指调度任务链中第一个链式任务关联的执行节点的时间,该时间标识着任务链的执行,直至任务链中的所有链式任务依据顺序和逻辑执行完成。任务链注册信息中可以包括各链式任务的执行顺序,用于标识各链式任务的执行顺序。若链式任务包括多个分片任务,则任务链注册信息中还可以包括各链式任务包含的分片任务信息。进一步的,任务链注册信息中还可以包括各链式任务关联的至少一个执行节点的节点信息。
具体的,在接收到当前链式任务的执行结果之后,若判断当前链式任务执行成功且完成,则可以依据任务链注册信息中各链式任务的执行顺序,确定当前链式任务的下一个链式任务即后置任务,并调度后置任务关联的至少一个执行节点执行后置任务。若以分片任务为单位,则接收各分片任务关联的执行节点上报的各分片任务的执行结果,若判断分片任务执行成功,则确定该分片任务所属的链式任务作为当前链式任务,并基于任务链注册信息中各链式任务中包含的分片任务信息,依据各分片任务的执行结果,判断当前链式任务是否执行完成。若当前链式任务中的全部分片任务执行完成,则依据任务链注册信息中各链式任务的执行顺序,确定当前链式任务的下一个链式任务即后置任务,并调度后置任务关联的至少一个执行节点执行后置任务。
其中,对于任务执行失败的情况,可以预先设定一个重试次数阈值,确保任务可以进行多次尝试。若在重试次数阈值之内任务仍然执行失败,则可以中断任务执行进程,并进行告警通知。具体的,若依据执行结果确定当前链式任务或分片任务失败,则调度该任务关联的执行节点重新执行,或调度其他空闲节点进行执行。其中,若检测当前链式任务工作量较大,则可以动态拆分当前链式任务为多个分片任务,以调度多执行节点并行执行。
此外,后置任务的执行状态还可以与当前链式任务的执行结果相关联,即在调度后置任务关联的至少一个执行节点执行后置任务时,可以同时将当前链式任务的执行结果传递至后置任务的执行节点中,从而在执行节点执行后置任务时,后置任务可以依赖前置任务的执行结果进行执行。
本实施例的技术方案,以任务链注册信息为依据,通过接收链式任务的执行结果,判断该链式任务是否执行完成,从而确定该链式任务的后置任务,并主动调度后置任务关联的执行节点来执行后置任务。本发明实施例通过对任务链注册信息和任务执行结果的收集,以及后置任务的主动调度,解除了后置任务与前置任务的逻辑耦合关系,避免了后置任务关联的执行节点中资源的浪费,提高了链式任务响应的灵活性、及时性和时效性。
实施例二
本实施例在上述实施例一的基础上,提供了任务处理方法的一个优选实施方式,能够对执行结果进行处理,并依据处理结果决策后续调度行为。图2为本发明实施例二提供的一种任务处理方法的流程图,如图2所示,该方法包括以下具体:
步骤210、接收任务链的任务链注册信息。
在本发明具体实施例中,在任务链执行之前,通过接收任务链的任务链注册信息,获取任务链信息以及任务调度策略。其中,用户可以预先在任务调度平台中配置任务链信息,以及可执行节点信息,以完成任务链信息的注册。或者各执行节点中预先部署了待执行的链式任务,以及其在任务链中的执行顺序,通过执行节点向任务调度平台进行任务链信息注册。本申请不对任务链信息的注册方式进行限定,任何可以完成任务链信息注册的方式都可以应用于本实施例中。
其中,任务链注册信息中至少包括任务链的初始调度时间、任务链中各链式任务的执行顺序、各链式任务包含的分片任务信息,以及各链式任务关联的至少一个执行节点的节点信息。
在本发明的一个可选实施中,在接收任务链的任务链注册信息之后,可以在线修改任务链注册信息,以重新接收任务调整后的任务链的任务链注册信息。
本实施例中,在接收任务链的任务链注册信息之后,在任务链执行之前,可以在任务调度平台或执行节点在线对任务链信息进行修改,例如修改其执行顺序或任务执行内容,还可以对任务链中的链式任务进行下线处理。从而重新进行任务链信息的注册,在线调整任务链。
步骤220、接收任务链中当前链式任务关联的至少一个执行节点上报的执行结果。
在本发明具体实施例中,若当前链式任务执行完成,则通过任务的逻辑接口,当前链式任务关联的执行节点向任务调度平台上报执行结果,以使任务调度平台可以接收任务调度平台的执行结果。其中,该执行结果是指该执行节点所执行的链式任务的执行结果,该执行结果可以为任务执行的数据信息,例如分片任务的执行结果为5;也可以为任务的执行状态信息,例如任务已执行完成。
可选的,若当前链式任务包括至少两个分片任务,则接收至少两个分片任务中,至少一个分片任务关联的执行节点上报的执行结果。
本实施例中,若当前链式任务包括至少两个分片任务,则接收当前链式任务中各分片任务关联的执行节点上报的执行结果。其中,该执行结果是指该执行节点所执行的分片任务的执行结果,同样该执行结果可以为任务执行的数据信息,也可以为任务的执行状态信息。
步骤230、若检测到执行节点上报的分片任务的执行结果为执行成功,则依据任务链注册信息中各链式任务包含的分片任务信息,确定该分片任务所属的链式任务作为当前链式任务。
在本发明具体实施例中,依据执行节点上报的分片任务的执行结果,若检测到分片任务执行成功,则依据任务链信息中,各链式任务与分片任务之间的关联关系,确定分片任务所属的链式任务,并将该链式任务作为当前链式任务。
可选的,若检测到执行节点上报的分片任务的执行结果为执行异常,则依据预设重试次数阈值,重新调度执行节点执行该分片任务。
本实施例中,对于任务执行失败的情况,可以预先设定一个重试次数阈值,例如3次重试,以确保任务有机会进行多次尝试,避免偶然性导致任务事变而无法重新执行。若在重试次数阈值之内任务仍然执行失败,则可以中断任务执行进程,并进行告警通知。具体的,若依据执行结果确定当前链式任务或分片任务失败,则调度该任务关联的执行节点重新执行,或调度其他空闲节点进行执行。此外,本实施例还可以对当前链式任务进行动态调度调整,例如若检测当前链式任务工作量较大,则可以动态拆分当前链式任务为多个分片任务,以调度多执行节点并行执行。
步骤240、依据当前链式任务中已执行成功的分片任务,若检测到当前链式任务中各分片任务执行成功,则确定当前链式任务执行完成。
在本发明具体实施例中,依据任务链注册信息中各链式任务包含的分片任务信息,对接收到的多个执行结果进行验证,以检测当前链式任务所包含的各个分片任务是否均执行完成且成功。若检测到当前链式任务中各分片任务执行成功,则确定当前链式任务执行完成。
步骤250、依据当前链式任务以及任务链注册信息中各链式任务的执行顺序,确定当前链式任务的后置任务,并调度后置任务关联的至少一个执行节点执行所述后置任务。
在本发明具体实施例中,依据当前链式任务以及任务链注册信息中各链式任务的执行顺序,将位于当前链式任务的下一个链式任务,确定为当前链式任务的后置任务,并调度后置任务关联的至少一个执行节点执行所述后置任务。
可选的,向后置任务关联的至少一个执行节点传递当前链式任务的执行结果,并调度执行节点执行后置任务,以使执行节点依据当前链式任务的执行结果,确定后置任务的执行状态并返回。
本实施例中,后置任务的执行状态还可以与当前链式任务的执行结果相关联,即在调度后置任务关联的至少一个执行节点执行后置任务时,可以同时将当前链式任务的执行结果传递至后置任务的执行节点中,从而在执行节点执行后置任务时,后置任务可以依赖前置任务的执行结果,首先进行执行逻辑判断,从而由任务的执行结果来确定链式任务的执行状态。其中,本实施例不对前置任务的执行结果与后置任务之间限制关系进行限定,任何能够满足任务处理需求的合理的限制关系都可以应用于本实施例中。
示例性的,假设在后置任务的执行逻辑当中,预先设定若前置任务的执行结果为预设数值,则继续执行该后置任务,否则跳过该后置任务。从而,在前置任务执行完成时,任务调度平台调度后置任务进行执行,并将前置任务的执行结果传递至后置任务的执行节点中。若后置任务判断前置任务的执行结果为该预设数值,则继续执行该后置任务,且后续调度不变;若该后置任务判断前置任务的执行结果并非预设数值,则后置任务的执行节点生成执行结束的执行结果,并将执行结果返回给任务调度平台,以供任务调度平台继续调度后续的链式任务进行执行。
示例性的,图3为分布式环境下链式任务处理过程的示意图。如图3所示,前置任务与后置任务为任务链中顺序相邻的两个链式任务。任务调度平台包括链式任务注册模块、执行结果收集模块以及任务调度模块。其中,链式任务注册模块负责接收链式任务注册信息,负责管理链式任务信息,支持在线修改以及下线链式任务信息。执行结果收集模块负责接收任务分片上报的分片执行结果,并将分片结果持久化保存,支持查询分片历史执行结果。任务调度模块负责处理任务分片上报的执行结果,并根据处理结果决策后续调度行为,逐一调度链式任务进行执行。
本实施例的技术方案,通过接收任务链注册信息,以任务链注册信息为依据对链式任务进行管理,并接收链式任务的执行结果,判断该链式任务是否执行完成,从而确定该链式任务的后置任务,并主动调度后置任务关联的执行节点来执行后置任务。本发明实施例通过对任务链注册信息和任务执行结果的收集,以及后置任务的主动调度,解除了后置任务与前置任务的逻辑耦合关系,避免了后置任务关联的执行节点中资源的浪费,提高了链式任务响应的灵活性、及时性和时效性。
实施例三
图4为本发明实施例三提供的一种任务处理装置的结构示意图,本实施例可适用于以任务调度平台为调度中心,对各个节点所执行的链式任务进行主动调度的情况,该装置可实现本发明任意实施例所述的任务处理方法。该装置具体包括:
执行结果收集模块410,用于接收任务链中当前链式任务关联的至少一个执行节点上报的执行结果;
任务调度模块420,用于依据任务链注册信息以及所述执行结果,确定所述当前链式任务的后置任务,并调度所述后置任务关联的至少一个执行节点执行所述后置任务。
进一步的,所述装置还包括链式任务注册模块430;所述链式任务注册模块430具体用于:
在所述接收任务链中当前链式任务关联的至少一个执行节点上报的执行结果之前,接收所述任务链的任务链注册信息;其中,所述任务链注册信息中至少包括所述任务链的初始调度时间、所述任务链中各链式任务的执行顺序、各链式任务包含的分片任务信息,以及各链式任务关联的至少一个执行节点的节点信息。
可选的,所述执行结果收集模块410具体用于:
若所述当前链式任务包括至少两个分片任务,则接收所述至少两个分片任务中,至少一个分片任务关联的执行节点上报的执行结果。
可选的,所述任务调度模块420具体用于:
若检测到执行节点上报的分片任务的执行结果为执行成功,则依据所述任务链注册信息中各链式任务包含的分片任务信息,确定该分片任务所属的链式任务作为当前链式任务;
依据所述当前链式任务中已执行成功的分片任务,若检测到所述当前链式任务中各分片任务执行成功,则确定所述当前链式任务执行完成;
依据所述当前链式任务以及所述任务链注册信息中各链式任务的执行顺序,确定所述当前链式任务的后置任务。
可选的,所述任务调度模块420具体还用于:
在所述确定所述当前链式任务的后置任务之前,若检测到执行节点上报的分片任务的执行结果为执行异常,则依据预设重试次数阈值,重新调度执行节点执行该分片任务。
可选的,所述任务调度模块420具体还用于:
向所述后置任务关联的至少一个执行节点传递所述当前链式任务的执行结果,并调度所述执行节点执行所述后置任务,以使所述执行节点依据所述当前链式任务的执行结果,确定所述后置任务的执行状态并返回。
可选的,所述链式任务注册模块430具体还用于:
在所述接收所述任务链的任务链注册信息之后,在线修改所述任务链注册信息,以重新接收任务调整后的任务链的任务链注册信息。
本实施例的技术方案,通过各个功能模块之间的相互配合,实现了链式任务的注册、任务执行结果的收集、执行结果的处理、调度行为的决策以及后置任务的调度等功能。本发明实施例通过对任务链注册信息和任务执行结果的收集,以及后置任务的主动调度,解除了后置任务与前置任务的逻辑耦合关系,避免了后置任务关联的执行节点中资源的浪费,提高了链式任务响应的灵活性、及时性和时效性。
实施例四
图5为本发明实施例四提供的一种服务器的结构示意图。典型的,该服务器可以为任务调度平台,或者是具有本实施例相应调度功能的设备。如图5所示,该服务器具体包括:一个或多个处理器510,图5中以一个处理器510为例;存储器520,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器510执行,使得一个或多个处理器510实现本发明任意实施例所述的任务处理方法。处理器510与存储器520可以通过总线或其他方式连接,图5中以通过总线连接为例。
存储器520,作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的任务处理方法对应的程序指令(例如,链式任务信息的注册和任务执行结果的接收以及后置任务的确定和调度)。处理器510通过运行存储在存储器520中的软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述的任务处理方法。
存储器520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器520可进一步包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实施例五
本发明实施例五还提供一种计算机可读存储介质,其上存储有计算机程序(或称为计算机可执行指令),该程序被处理器执行时用于执行一种任务处理方法,该方法包括:
接收任务链中当前链式任务关联的至少一个执行节点上报的执行结果;
依据任务链注册信息以及所述执行结果,确定所述当前链式任务的后置任务,并调度所述后置任务关联的至少一个执行节点执行所述后置任务。
当然,本发明实施例所提供的一种计算机可读存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的任务处理方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明实施例可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明实施例进行了较为详细的说明,但是本发明实施例不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种任务处理方法,其特征在于,包括:
接收任务链中当前链式任务关联的至少一个执行节点上报的执行结果;
依据任务链注册信息以及所述执行结果,确定所述当前链式任务的后置任务,并调度所述后置任务关联的至少一个执行节点执行所述后置任务。
2.根据权利要求1所述的方法,其特征在于,在所述接收任务链中当前链式任务关联的至少一个执行节点上报的执行结果之前,还包括:
接收所述任务链的任务链注册信息;其中,所述任务链注册信息中至少包括所述任务链的初始调度时间、所述任务链中各链式任务的执行顺序、各链式任务包含的分片任务信息,以及各链式任务关联的至少一个执行节点的节点信息。
3.根据权利要求1所述的方法,其特征在于,所述接收任务链中当前链式任务关联的至少一个执行节点上报的执行结果,包括:
若所述当前链式任务包括至少两个分片任务,则接收所述至少两个分片任务中,至少一个分片任务关联的执行节点上报的执行结果。
4.根据权利要求1所述的方法,其特征在于,所述依据任务链注册信息以及所述执行结果,确定所述当前链式任务的后置任务,包括:
若检测到执行节点上报的分片任务的执行结果为执行成功,则依据所述任务链注册信息中各链式任务包含的分片任务信息,确定该分片任务所属的链式任务作为当前链式任务;
依据所述当前链式任务中已执行成功的分片任务,若检测到所述当前链式任务中各分片任务执行成功,则确定所述当前链式任务执行完成;
依据所述当前链式任务以及所述任务链注册信息中各链式任务的执行顺序,确定所述当前链式任务的后置任务。
5.根据权利要求1所述的方法,其特征在于,在所述确定所述当前链式任务的后置任务之前,还包括:
若检测到执行节点上报的分片任务的执行结果为执行异常,则依据预设重试次数阈值,重新调度执行节点执行该分片任务。
6.根据权利要求1所述的方法,其特征在于,所述调度所述后置任务关联的至少一个执行节点执行所述后置任务,包括:
向所述后置任务关联的至少一个执行节点传递所述当前链式任务的执行结果,并调度所述执行节点执行所述后置任务,以使所述执行节点依据所述当前链式任务的执行结果,确定所述后置任务的执行状态并返回。
7.根据权利要求2所述的方法,其特征在于,在所述接收所述任务链的任务链注册信息之后,还包括:
在线修改所述任务链注册信息,以重新接收任务调整后的任务链的任务链注册信息。
8.一种任务处理装置,其特征在于,包括:
执行结果收集模块,用于接收任务链中当前链式任务关联的至少一个执行节点上报的执行结果;
任务调度模块,用于依据任务链注册信息以及所述执行结果,确定所述当前链式任务的后置任务,并调度所述后置任务关联的至少一个执行节点执行所述后置任务。
9.一种服务器,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一项所述的任务处理方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一项所述的任务处理方法。
CN201910380106.1A 2019-05-08 2019-05-08 任务处理方法、装置、服务器和存储介质 Pending CN110096342A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910380106.1A CN110096342A (zh) 2019-05-08 2019-05-08 任务处理方法、装置、服务器和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910380106.1A CN110096342A (zh) 2019-05-08 2019-05-08 任务处理方法、装置、服务器和存储介质

Publications (1)

Publication Number Publication Date
CN110096342A true CN110096342A (zh) 2019-08-06

Family

ID=67447366

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910380106.1A Pending CN110096342A (zh) 2019-05-08 2019-05-08 任务处理方法、装置、服务器和存储介质

Country Status (1)

Country Link
CN (1) CN110096342A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110519381A (zh) * 2019-08-29 2019-11-29 深圳前海微众银行股份有限公司 分布式任务的处理方法、装置、终端设备及存储介质
CN111142849A (zh) * 2019-12-10 2020-05-12 贝壳技术有限公司 流程处理方法、装置、存储介质及处理器
CN111538577A (zh) * 2020-04-21 2020-08-14 北京字节跳动网络技术有限公司 程序执行控制的装置及方法、终端和存储介质
CN112231098A (zh) * 2020-09-29 2021-01-15 北京三快在线科技有限公司 任务处理方法、装置、设备及存储介质
CN112579267A (zh) * 2020-09-28 2021-03-30 京信数据科技有限公司 一种去中心化大数据作业流调度方法及装置
CN112882813A (zh) * 2021-03-18 2021-06-01 苏州科达科技股份有限公司 任务调度方法、装置、系统及电子设备
CN113467908A (zh) * 2021-06-23 2021-10-01 深圳市蘑菇财富技术有限公司 任务执行方法、装置、计算机可读存储介质及终端设备
CN114020442A (zh) * 2022-01-04 2022-02-08 连连宝(杭州)信息技术有限公司 一种任务处理方法、装置、电子设备及可读存储介质
CN115840631A (zh) * 2023-01-04 2023-03-24 中科金瑞(北京)大数据科技有限公司 基于raft的高可用分布式任务调度方法和设备

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110519381A (zh) * 2019-08-29 2019-11-29 深圳前海微众银行股份有限公司 分布式任务的处理方法、装置、终端设备及存储介质
CN110519381B (zh) * 2019-08-29 2023-08-25 深圳前海微众银行股份有限公司 分布式任务的处理方法、装置、终端设备及存储介质
CN111142849A (zh) * 2019-12-10 2020-05-12 贝壳技术有限公司 流程处理方法、装置、存储介质及处理器
CN111538577A (zh) * 2020-04-21 2020-08-14 北京字节跳动网络技术有限公司 程序执行控制的装置及方法、终端和存储介质
CN112579267A (zh) * 2020-09-28 2021-03-30 京信数据科技有限公司 一种去中心化大数据作业流调度方法及装置
CN112231098A (zh) * 2020-09-29 2021-01-15 北京三快在线科技有限公司 任务处理方法、装置、设备及存储介质
CN112882813A (zh) * 2021-03-18 2021-06-01 苏州科达科技股份有限公司 任务调度方法、装置、系统及电子设备
CN112882813B (zh) * 2021-03-18 2022-07-22 苏州科达科技股份有限公司 任务调度方法、装置、系统及电子设备
CN113467908A (zh) * 2021-06-23 2021-10-01 深圳市蘑菇财富技术有限公司 任务执行方法、装置、计算机可读存储介质及终端设备
CN113467908B (zh) * 2021-06-23 2024-02-20 深圳市蘑菇财富技术有限公司 任务执行方法、装置、计算机可读存储介质及终端设备
CN114020442A (zh) * 2022-01-04 2022-02-08 连连宝(杭州)信息技术有限公司 一种任务处理方法、装置、电子设备及可读存储介质
CN115840631A (zh) * 2023-01-04 2023-03-24 中科金瑞(北京)大数据科技有限公司 基于raft的高可用分布式任务调度方法和设备

Similar Documents

Publication Publication Date Title
CN110096342A (zh) 任务处理方法、装置、服务器和存储介质
US10983895B2 (en) System and method for data application performance management
US6711616B1 (en) Client-server task distribution system and method
US8171474B2 (en) System and method for managing, scheduling, controlling and monitoring execution of jobs by a job scheduler utilizing a publish/subscription interface
CN108536532A (zh) 一种批量任务处理方法及系统
US7085831B2 (en) Intelligent system control agent for managing jobs on a network by managing a plurality of queues on a client
US9229839B2 (en) Implementing rate controls to limit timeout-based faults
EP3588290A1 (en) Resources management in internet of robotic things (iort) environments
CN115543577B (zh) 基于协变量的Kubernetes资源调度优化方法、存储介质及设备
CN105630588A (zh) 一种分布式作业调度方法和系统
CN112579267A (zh) 一种去中心化大数据作业流调度方法及装置
CN111767145A (zh) 容器调度系统、方法、装置和设备
CN113157411A (zh) 一种基于Celery的可靠可配置任务系统及装置
CN118051374B (zh) 一种智能化检查点恢复方法、云操作系统以及计算平台
CN102165426B (zh) 选择性地使用缓解来减少错误的存储器管理技术
US11951999B2 (en) Control unit for vehicle and error management method thereof
Kalayci et al. Distributed and Adaptive Execution of Condor DAGMan Workflows.
CN116860463A (zh) 一种分布式自适应星载中间件系统
CN112084004A (zh) 一种面向容器应用的容器探测与维护方法及系统
CN107172149A (zh) 大数据即时调度方法
CN116737560B (zh) 基于智能导控的智慧训练系统
US20230418663A1 (en) System and methods for dynamic workload migration and service utilization based on multiple constraints
Amoon Design of a fault-tolerant scheduling system for grid computing
CN111177232B (zh) 一种数据处理方法、装置、系统和存储介质
Goldberg et al. Adaptive Fault-Resistant Systems1

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190806