INFO-不同周期任务依赖问题
更新时间: 2024-03-11 02:51:20
阅读 1921
功能说明
适用模块
离线开发
具体说明
case1:B任务依赖于A任务,则直接通过猛犸配置依赖即可实现,同一个小时周期内,B任务会等待A任务执行成功后开始执行;
case2:A任务依赖于B任务,则通过猛犸配置依赖时,需启用同周期依赖或设置offset=-1,否则A任务默认依赖上一个小时的B任务调度情况;
case3:C任务依赖于B任务,因同为小时任务,直接比较分钟数,结果与case2一致
case4:D任务依赖于C任务,C任务拼接日期后,首次调度时间晚于D任务,则使用C任务的上一个周期任务调度时间拼接日期后与D任务调度时间进行比较,发现C任务的上一周期时间仍然晚于D任务调度时间,则再次C任务再次向前推移一个周期,比较后符合要求,即D任务依赖每天00:03分的C任务进行调度;
case5:A任务依赖于D任务,A任务拼接日期后,首次调度时间早于D任务,则每天第一次调度A任务依赖前一天的天任务,每天第二次调度A任务依赖于当天的D任务;
以上依赖情况均可通过配置offset参数来调整默认依赖的周期数,offset=1则依赖周期向前推移一个周期;
使用示例
任务依赖的判断依据为首次调度时间:
1、相同周期则直接比较调度时间,调度任务的调度时间必须晚于依赖任务的调度时间,否则默认依赖上一个周期的依赖任务,若开启同周期依赖,则可避免因调度时间导致的依赖上一周期任务;(如果调度任务为小时级,则比较调度时间的分钟数)
2、不同周期则可使用当前调度日期拼接首次调度时间,然后进行时间比较,调度任务的调度时间必须晚于依赖任务的调度时间,否则会向前推移依赖任务的一个周期后再次进行比较,直到依赖任务的调度时间早于调度任务,不同周期任务依赖不支持同周期调度参数;
作者:常惠渊
文档反馈
以上内容对您是否有帮助?