nodejs에서도 아주 간단하게 scheduler를 사용 할 수 있다.
# 설치만 하면 바로 사용이 가능하다
$ npm install --save node-schedule
# 아래는 sample source
var schedule = require('node-schedule');
# crontab을 사용하기 위한 format
# * * * * * * (초 분 시 날짜 월 주)
// 매 42분에 실행
var job1 = schedule.scheduleJob('42 * * * *', function() {
console.log('job1!!');
});
});
// 5분마다 실행
var job2 = schedule.scheduleJob('*/5 * * * *', function() {
console.log('job2!!');
});
console.log('job2!!');
});
// 매 1시에 실행
var job3 = schedule.scheduleJob('0 1 * * *', function() {
console.log('job3!!');
});
console.log('job3!!');
});
// date 객체를 이용 할 수 있다.
// 2019년 1월 22일 13시 45분에 실행
var date = new Date(2019, 1, 22, 13, 45);
var job4 = schedule.scheduleJob(date, function() {
var job4 = schedule.scheduleJob(date, function() {
console.log('job4!!');
});
});
// scheduler에 파라미터를 전달하는 방법
var date = new Date(2019, 1, 22, 13, 45);
var data = 'BEFORE';
var job5 = schedule.scheduleJob(date, function(_data) {
console.log(_data); // BEFORE 가 출력 됨
}.bind(null, data));
var data = 'BEFORE';
var job5 = schedule.scheduleJob(date, function(_data) {
console.log(_data); // BEFORE 가 출력 됨
}.bind(null, data));
// scheduler 취소
job1.cancel();
job2.cancel();
job3.cancel();
job4.cancel();
job5.cancel();