课程 329 / 365
90%
多智能体与自动化·练习·18 分钟
正文已完成

设计一个可重跑、可暂停的定时任务

交付触发、运行键、检查点、通知、补跑和停用组成的自动化运行契约。

L329

可运营的定时任务除了 cron 表达式,还需要数据就绪检查、唯一运行键、状态机、超时、重试、失败通知、补跑范围和停用开关;每次运行都应留下可审计回执。

这一课的结果

能为一个定时任务写出不会重复副作用且能安全恢复的完整方案。

核心概念

先把关键判断说清楚

01

运行键定义同一次业务动作

日期、租户和任务类型组成稳定键,重复触发时复用状态而不是再执行副作用。

02

检查点支持断点续跑

长任务按批次记录游标和已完成项,恢复时从可靠边界继续而不是全部重来。

03

补跑与实时运行要隔离

历史补跑设置独立范围和资源配额,避免占满当前周期任务。

案例拆解

每晚课程内容健康检查

检查365课的链接和字段需要40分钟,旧任务中断后会从头运行并重复发送告警。

  1. 01

    运行键设为日期+content-check-v1,状态记录 pending/running/blocked/completed。

  2. 02

    每50课保存游标和错误列表,中断后从最近完整批次续跑。

  3. 03

    同一运行键只在最终状态发送一次摘要,历史补跑限制为单并发。

案例结果

任务可安全重启,不会重复通知,也不会让补跑抢占当晚检查。

提交前练习

现在轮到你

为一个每日至少处理100项的任务写运行契约。

内容会自动保存在当前设备
查看参考答案与评分标准

参考答案

每天按 Asia/Shanghai 时区2时启动,且上游须标记 ready。运行键由日期和租户组成;每100条保存游标,可重试错误两次,数据错误标记 blocked。完成或阻塞各通知一次;补跑需指定日期并限制单并发,紧急停用开关有审计。

评分标准

  • 触发包含时区和数据条件
  • 重复运行不会重复副作用
  • 补跑、暂停和通知都可操作

本课收口 · 学习证据

完成,不等于随手打一个勾。

确认阅读、保存练习,再用 30 秒检查和一句话总结留下真实学习证据。

0 / 3
02完成本课练习0 / 4 项必填内容已填写
03通过理解检查约 30 秒
定时任务的运行键最主要解决什么问题?
你现在更接近哪一种状态?
完成上面三项后,才能把本课记为已验证。

资料来源

继续核对与延伸阅读

本课内容最近更新于