logo好方法网

一种基于双队列的分布式并行任务调度执行方法


技术摘要:
本发明公开一种基于双队列的分布式并行任务调度执行方法,其特征在于包括初始化队列、构造任务加入队列、申请执行任务、任务完成后更新任务执行状态,持久化任务执行记录的过程。本发明方法能够加速任务的调度,减少任务执行延迟时间,任务失败或者长时间无响应后的及  全部
背景技术:
随着分布式计算的大规模应用,计算任务如何分配,以及计算任务失败后如何重 试的问题摆在我们面前。传统的任务调度系统,由专门的任务调度进程进行任务分配,任务 分配给某个计算进程后,任务会存在失败或长时间未响应的场景,这需要等待任务调度进 程重新对任务进行调度,这往往存在任务失败丢失,重新调度不及时,任务执行情况跟踪不 便捷,任务调度环节单点的问题。
技术实现要素:
为提高任务调度的效率,本发明提供一种分布式并行任务调度执行方法。 本发明具体采用如下技术方案: 一种基于双队列的分布式并行任务调度执行方法,其特征在于包括如下步骤: 步骤1、初始化第一队列和第二队列,其中第一队列用于存放待分发执行的任务,第二 队列用于存放已经分发给任务执行器执行的任务; 步骤2、构造任务,将任务加入第一队列; 步骤3、任务执行器从第一队列中申请任务,如果申请成功,将任务从第一队列出队并 加入第二队列; 步骤4、执行任务,如果任务执行顺利完成,转步骤6;如果任务执行过程出错,转步骤5; 步骤5、任务执行器更新任务执行次数,如果任务允许重试且未超过限定的重试次数, 则将任务从第二队列转移到第一队列,回到步骤3;如果任务不允许重试,则放弃任务执行; 步骤6、任务执行器更新任务执行状态,持久化任务执行记录,将任务从第二队列出队。 本发明基于双队列的分布式并行任务调度执行方法,能够加速任务的调度,减少 任务执行延迟时间,任务失败或者长时间无响应后的及时重新调度,更方便的跟踪任务执 行情况,并且任务调度是并行执行的,同时避免了传统的任务调度的单点问题。 附图说明 图1是本发明方法流程图。
分享到:
收藏