一、cron 模块

Cron 是一个可以让你按计划(Schedule)执行某些操作的工具。

安装依赖

npm install cron

示例代码

  1. const { CronJob } = require('cron')
  2. // 创建定时任务
  3. const job = new CronJob(
  4. cronTime,
  5. onTick,
  6. null, // onComplete 何时停止任务,null
  7. true, // 初始化之后立即执行,否则要执行 job.start() 才能开始
  8. 'Asia/Shanghai' // 时区,非常重要!!!!
  9. );
  10. // 要确保进程结束时,定时任务即停止,否则就会重复执行定时任务
  11. process.on('exit', () => job.stop());
  • 要注意定时任务的时区设置,这一点非常重要。服务器的时区、Docker执行的时区以及定时任务所设置的时区都需要保持统一,否则易导致定时任务执行不正确。
  • 进程结束时,一定要停止定时任务,否则会导致定时任务重复执行。