0.0.7 • Published 9 years ago
cron-q v0.0.7
Cron Job Manager
This queue impelement is built on top of bull, with scheduling ability for jobs by using cron.
Install
npm install cron-q --save
Note that you need a redis version higher or equal than 2.6.12, which is required by bull.
Quick guide
var Queues = require('cron-q');
var REDIS_CONNECTION_URL = "redis://localhost:6379";
var redis_prefix = "myQ:";
var queues = new Queues(REDIS_CONNECTION_URL, redis_prefix);
var myQueueName = "myQueue";
//Create a queue with a unique name, and specify job processing method
queues.createQueue(myQueueName, function(data, done){
//Do your job with stored data
done();
});
// job data can be any object, this object will be sent back to job processing
// method when job is triggered.
var jobData = {};
var when = 5*60*1000; // it can be a millisecond values from now, or a specified Date object
queues.addJob(myQueueName, jobData, when, function(err, jobId){
if(!err){
// jobId can be used later to reschedule or cancel a job.
// If `when` is a `new Date()` or undefined, jobId will not be returned
// as job will be executed soon
if(jobId){
// persist jobId somewhere
// queues.cancelJob(jobId, callback);
// queues.rescheduleJob(jobId, when, callback);
}
}
});