在 Node.js 中,我使用 node-schedule 來執行定時任務。Cron-style 的時間格式對於初學者不太直觀,所以一般使用這種方式:比如官方示例中的每個小時的 42 分執行任務
代碼如下:
var schedule = require('node-schedule');
var rule = new schedule.RecurrenceRule();
rule.minute = 42;
var j = schedule.scheduleJob(rule, function(){
console.log('The answer to life, the universe, and everything!');
});
那麼問題來了,如何每隔 15 分鐘、 30 分鐘執行一次任務呢?
比較關鍵的地方在於 rule.minute 是支持數組的,知道這一點就很好操作了
每隔 15 分鐘執行:
代碼如下:
rule.minute = [0, 15, 45];
同理,每隔 30 分鐘執行:
代碼如下:
rule.minute = [0, 30];