Scheduling

定时付费任务如何分配递增编号并避免重试重复创建

一个按周运行的媒体流水线需要支持同一 ISO 周内发布多期内容。原来的周标识不再唯一,因此任务目录和历史记录改成了 2026-W32-0、2026-W32-1、2026-W32-2 这样的版本化形式。

但增加序号只解决了一半问题。调度器可能在分配任务后、记录成功前异常重启。如果每次重跑都重新申请“下一个序号”,同一次逻辑运行就会消耗多个任务 ID。对于付费流水线,后果不只是目录混乱:后续命令还可能初始化第二个任务,并向供应商重复提交请求。

重试为什么会重复创建任务

这套流程必须同时满足两个看似冲突的要求:

  1. 同一周内的不同运行必须获得递增序号;
  2. 同一次定时运行的异常重试必须拿回原序号。

只看 …