firebase-queue:多个worker没有正常运行?

时间:2015-07-11 19:00:19

标签: node.js queue firebase

我是Node.js的新手,虽然我多年来一直在编写javascript。对于我没有遵循的最佳实践或其他重新思考,我不仅仅对任何节点建议持开放态度。那说:

我正在构建一个系统,用户在其中创建预订,同时为我的firebase-queue提交任务以进行提取。此队列具有与之关联的多个规范。反过来,它应该:

  1. 检查可用性,并作为响应确认/抛出预留警报并相应地更新firebase数据。
  2. 更新用户预约,这是预订对象密钥的索引,并删除任何多余的预留对象。
  3. 使用node-schedule创建日期函数,以发送有关其预订到期日期的通知。
  4. 但是,当我运行我的脚本时,只有一个我实例化的firebase队列运行。我可以在仪表板中查看进度是否为100,_state是新的finished_state(这是下一个规范的start_state),但下一个队列将不会接收任务并处理它。

    如果我退出我的脚本并重新运行它,下一个队列将正常工作。然后在那之后的队列将无法工作,直到我重复退出并重新运行脚本的行为。我可以继续这个,直到整个任务序列完成,所以我不认为规范或正在执行的代码本身是阻塞的。无论如何,我没有看到任何错误状态出现。

    从文档中看起来我应该能够以这种方式编写脚本,多次调用'new Queue(queueRef,options,function(data,progress,resolve,reject)......'他们会'只需运行每个任务,因为我在他们的选项中设置它们(所有这些基本上都是:

    var options = {
      'specId': 'process_reservation',
      'numWorkers': 5,
      'sanitize': true,
      'suppressStack': false
    };
    

    但是,不。我想我可以为每个队列实例生成子进程,但我不确定这是否是对我所看到的问题的极端反应,我不确定它是否会使节点结构复杂化共享模块导出。此外,我不确定它是否会开始影响我的并发连接数。

    谢谢!

0 个答案:

没有答案