主题
定时任务
定时任务模块提供任务的创建、调度、执行和监控的全生命周期管理能力,支持基于 Cron 表达式的灵活调度和分布式执行。
功能总览
| 功能点 | 说明 |
|---|---|
| 任务管理 | 定时任务的创建、编辑和删除 |
| 调度管理 | 基于 Cron 表达式的任务调度 |
| 执行日志 | 任务执行记录和日志查看 |
| 手动触发 | 手动执行一次定时任务 |
| 告警通知 | 任务执行失败时自动告警 |
任务管理
定时任务通过可视化界面进行管理,主要操作包括:
- 任务创建:定义任务名称、任务处理器、Cron 表达式
- 任务编辑:修改任务参数和执行计划
- 启用停用:控制任务的调度状态
- 任务删除:删除不再使用的定时任务
任务配置字段
| 字段 | 说明 |
|---|---|
| 任务名称 | 任务的中文名称 |
| 任务编号 | 任务的唯一标识 |
| 任务处理器 | 执行任务的后端 Bean 名称 |
| Cron 表达式 | 任务的执行时间表达式 |
| 执行参数 | 传递给任务处理器的参数 |
| 重试次数 | 执行失败的最大重试次数 |
| 超时时间 | 任务执行的最大时长(秒) |
Cron 表达式
Cron 表达式用于定义任务的执行时间:
cron
# 格式:秒 分 时 日 月 周
0 0 8 * * ? # 每天早上 8 点执行
0 0 1 * * ? # 每天凌晨 1 点执行
0 0 0 1 * ? # 每月 1 日零点执行
0 0/30 * * * ? # 每 30 分钟执行一次
0 0 9-18 * * ? # 每天 9 点到 18 点,每小时执行常用场景
- 数据同步:每日凌晨同步业务数据
- 报表生成:每周一早上生成上周经营报表
- 数据清理:每月清理过期日志和临时数据
- 状态更新:每 5 分钟检查并更新超时任务状态
- 通知提醒:每日定时发送待办提醒通知
执行日志
定时任务的每次执行都记录详细的日志信息:
- 执行时间:任务开始时间和结束时间
- 执行结果:成功或失败
- 执行耗时:任务执行的总耗时
- 错误信息:任务执行失败时的异常堆栈
- 输出数据:任务执行产生的输出结果
分布式调度
系统支持分布式环境下的定时任务调度:
- 任务分发:任务在集群中均匀分布执行
- 负载均衡:自动将任务分配到负载较低的节点
- 故障转移:某节点故障时,任务自动转移到其他节点
- 任务唯一性:同一任务在同一时间点只执行一次
告警通知
任务执行异常时自动触发告警:
- 执行失败告警:任务执行失败发送通知给任务负责人
- 超时告警:任务执行超过设定阈值发出告警
- 连续失败告警:任务连续多次失败时的高级别告警
