一、cron
模块
Cron
是一个可以让你按计划(Schedule)执行某些操作的工具。
安装依赖
npm install cron
示例代码
const { CronJob } = require('cron')
// 创建定时任务
const job = new CronJob(
cronTime,
onTick,
null, // onComplete 何时停止任务,null
true, // 初始化之后立即执行,否则要执行 job.start() 才能开始
'Asia/Shanghai' // 时区,非常重要!!!!
);
// 要确保进程结束时,定时任务即停止,否则就会重复执行定时任务
process.on('exit', () => job.stop());
- 要注意定时任务的时区设置,这一点非常重要。服务器的时区、Docker执行的时区以及定时任务所设置的时区都需要保持统一,否则易导致定时任务执行不正确。
- 进程结束时,一定要停止定时任务,否则会导致定时任务重复执行。