xxl-job多节点部署,任务重复执行

2,121 阅读1分钟

xxl-job 多节点部署时,会存在多个 xxl-job 节点同时给 同一个执行器下发调度的情况,会导致一个执行器在同一个执行时间执行n次。

为了避免任务重复执行,可以采用官方推荐的如下策略。

调度密集或者耗时任务可能会导致任务阻塞,集群情况下调度组件小概率情况下会重复触发;

针对上述情况,可以通过结合 “单机路由策略(如:第一台、一致性哈希)” + “阻塞策略(如:单机串行、丢弃后续调度)” 来规避,最终避免任务重复执行。

路由策略需要选择“单机路由策略”,建议使用 “一致性HASH”、“故障转移”。 阻塞策略按需求选用,本人遇到的生产场景适合使用 “丢弃后续调度” 。