我在我的一个项目中使用kue从数据库中删除过时的锁。我能够处理单个作业,例如更新 mongoDB 中的单个文档。
var kue = require('kue')
, queue = kue.createQueue();
queue.process('staleLocks', function(job, done){
removeLock(job.data.id, done);
});
function removeLock(id, done) {
// mongoDB call
done();
}
但是,我想通过收集队列处理后的所有 id 来一次更新所有文档。我什至可以存储所有 ID。唯一的问题是,当队列被处理时,我无法跟踪某种事件来同步整个过程。