Node.js setTimeout 24小时 - 任何警告?

Max*_*ari 10 javascript settimeout node.js

简单的问题,我想Node.js定期(每天一次或两次)设置24或12小时超时检查一些数据库数据并清除可疑垃圾(如果有的话).

是否有任何可能的问题或性能问题,由设置巨大的超时引起,我需要注意?我不介意它是不是确切的12-24小时毫秒,并不介意在服务器崩溃时失去这个超时,因为我将在服务器启动时运行相同的垃圾收集器.

结论:

  • 我没有使用本机OS cron来运行单独的脚本,因为我需要访问此脚本中的当前Node.js进程数据.
  • 最后,我决定使用https://www.npmjs.com/package/cron 软件包,以便在特定时间(可能是在服务器负载较低的情况下)进行转换.
  • 谢谢大家快速回复!

Exp*_*lls 8

我已成功使用该软件包cron.它使用简单,通常与CronTab兼容.我有一份工作,每个月运行一次,自去年以来一直有效,所以我可以证明这一点.

话虽如此,这个软件包最终只是在setTimeout内部使用,所以你没有真正的问题.如果您的超时数量太大(大于最大JavaScript整数),则可能存在问题,但1000 * 60 * 60 * 24明显小于此值.

显然,如果您的系统出现故障或脚本由于其他原因而崩溃,则超时将无效.

crontab如果可用(或Windows任务调度),您也可以直接使用.