【问题标题】:Can resque and resque-scheduler jobs run in parallel?resque 和 resque-scheduler 作业可以并行运行吗?
【发布时间】:2013-12-05 19:09:54
【问题描述】:

如何使 resque 和 resque-scheduler 作业并行工作,
我可以像这样同时运行 2 个工人

COUNT=2 QUEUE=* rake resque:workers

但是当 2 个 resque 作业正在工作时,resque-scheduler 作业正在队列中等待,
我需要 resque-scheduler 作业与 resque 作业并行运行

【问题讨论】:

  • 为什么不用不同的队列把它们分开呢?
  • @astropanic 他们有 2 个不同的队列
  • COUNT=2 QUEUE=foo rake resque:workers ; COUNT=2 QUEUE=bar rake resque:workers - 你将拥有 2 名工人

标签: ruby-on-rails resque resque-scheduler


【解决方案1】:

Resque 允许您使用不同的工作队列,并设置工作人员从哪些队列中提取工作的优先级列表。

例如,如果您有一个名为“batch_jobs”的队列和一个名为“scheduled”的具有更高优先级的工作队列,您可以使用以下方法运行 2 个工作器:

COUNT=2 QUEUE=scheduled,batch_jobs rake resque:workers

当您从 resque-scheduler 调度作业时,将它们放入“已调度”队列将导致它们在“batch_jobs”队列中的作业之前执行。

每个worker会按顺序不断扫描QUEUES列表,试图找到一份工作。

【讨论】:

    猜你喜欢
    • 2011-09-24
    • 1970-01-01
    • 2016-05-29
    • 2015-09-17
    • 2012-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-25
    相关资源
    最近更新 更多