Node 依赖包
大约 2 分钟
Node 依赖包
node-schedule
node-schedule 是一个定时任务的模块,可以用来执行定时任务。
使用场景
- 后台任务,定时任务可用于自动执行后台任务,如数据备份、日志清理、缓存刷新等。通过设定适当的时间点或时间间隔,可以确保这些任务按计划进行,而无需手动干预。
- 定期操作,定时任务可用于执行定期操作,如发送电子邮件提醒、生成报告、更新数据等。通过设定适当的时间点,可以自动触发这些操作,提高效率并减少人工操作的需求。
- 调度任务和工作流,定时任务可以用于调度和协调复杂的任务和工作流程。
使用方法
* * * * * *
┬ ┬ ┬ ┬ ┬ ┬
│ │ │ │ │ │
│ │ │ │ │ └── 星期(0 - 6,0表示星期日)
│ │ │ │ └───── 月份(1 - 12)
│ │ │ └────────── 日(1 - 31)
│ │ └─────────────── 小时(0 - 23)
│ └──────────────────── 分钟(0 - 59)
└───────────────────────── 秒(0 - 59)
- 数值:表示具体的时间单位,如 1、2、10 等。
- 范围:使用-连接起始和结束的数值,表示一个范围内的所有值,如 1-5 表示 1 到 5 的所有数值。
- 通配符:使用表示匹配该字段的所有可能值,如表示每分钟、每小时、每天等。
- 逗号分隔:使用逗号分隔多个数值或范围,表示匹配其中任意一个值,如 1,3 表示 1 或 3。
- 步长:使用/表示步长,用于指定间隔的数值,如*/5 表示每隔 5 个单位执行一次。
- 特殊字符:Cron 表达式还支持一些特殊字符来表示特定的含义,如?用于替代日和星期字段中的任意值,L 表示最后一天,W 表示最近的工作日等。
import schedule from 'node-schedule'
schedule.scheduleJob('0 30 0 * * *', () => {
// do something
})