2

我正在尝试使用 Kue 来安排工作。

但是我正在尝试找到一种方法来检查是否已经存在具有某个名称的队列。

到目前为止,这是我的代码。问题是每次我运行节点时它都会不断创建队列。

如何检查队列名称“电子邮件”是否已存在?

var queue = kue.createQueue(); 
            var job = queue.create('email', {  
                title: 'Welcome to the site',
                to: 'user@example.com',
                template: 'welcome-email'
            }).save();

            job.on('complete', function(result){
                console.log('Job completed with data ', result);
            });

            kue.app.listen(3001);

            queue.process('email', function(job, done){
              email('abc@gmail.com', done);
            });

            function email(address, done) {
              console.log(address);
              // email send stuff...
              done();
            }
4

1 回答 1

2

从我阅读的文档中,它指出每个节点进程只创建一个队列实例https://github.com/Automattic/kue#processing-jobs

几天前我才开始在 Kue 上工作,据我了解,只有一个实例可以让您注册活动。假设您有“电子邮件”、“短信”和“每周通知”类型的工作。您将使用队列注册此类事件

    queue.process('email', function(job, done){

    });

    queue.process('sms', function(job, done){

    });

    queue.process('weeklynotifications', function(job, done){

    });

因此,简而言之,如果您计划为每种任务使用多个队列,这可能是不可能的。一个队列处理所有类型的任务。

于 2017-02-06T14:05:46.650 回答