是否有一种类似于cron的库可以让我在特定时间(例如15:30,而不是x小时后)安排运行某些函数?如果没有这样的库,那么应该如何实现?我应该设置回调函数每秒被调用并检查时间,并启动计划在该时间运行的作业吗?
是否有一种类似于cron的库可以让我在特定时间(例如15:30,而不是x小时后)安排运行某些函数?如果没有这样的库,那么应该如何实现?我应该设置回调函数每秒被调用并检查时间,并启动计划在该时间运行的作业吗?
Node-cron 正是我所描述的工具。
app.js
中声明cron。在sails.js
中,我会在bootstrap
中完成。 - ArVanagenda
上添加 Waterline 支持了:https://github.com/mikermcneil/agenda (虽然刚刚开始,但下周应该会有一些可用的进展)。 - mikermcneilnode-schedule 是一个类似于cron和非类似于cron的Node作业调度程序。
agenda是一个适用于Node.js的轻量级工作调度程序。这将对你有所帮助。
agenda
的行为不一致,不建议使用它。请查看未解决的问题和拉取请求,自行决定是否使用。 - Russbear编辑:
您可以使用timexe
它使用简单,轻量级,没有依赖关系,相对于cron有更好的语法,分辨率为毫秒,并且可以在浏览器中工作。
安装:
npm install timexe
使用:
var timexe = require('timexe');
var res = timexe("* * * 15 30", function(){ console.log("It's now 3:30 pm"); });
(我是作者)
node-crontab 可以让你通过node.js编辑系统定时任务。使用这个库可以在主进程终止后仍然运行程序。声明:我是这个库的开发者。
Runnr.addIntervalJob('10:20', function(){...}, 'myjob')
每天在上午10点和下午3点完成一项工作,
Runnr.addDailyJob(['10:0:0', '15:0:0'], function(){...}, 'myjob')