Resque では、次のものがあれば:
bundle exec rake resque:work QUEUE=critical,high,normal,low,aggregate
特定のキュー (つまり、集約キュー) に対して 1 つだけのワーカーが必要であることを示すにはどうすればよいですか?
Resque では、次のものがあれば:
bundle exec rake resque:work QUEUE=critical,high,normal,low,aggregate
特定のキュー (つまり、集約キュー) に対して 1 つだけのワーカーが必要であることを示すにはどうすればよいですか?
私はそれが可能だとは思わない
ここで現在のコードを見る理由
すべてのキューを再度ポーリングする
value = @redis.blpop(*(queue_names + [1])) until value
queue_names はあなたのcritical,high,normal,low,aggregate
ここでのポイントは、単一のレスキュー作業または複数のワーカーを使用するかどうかに関係なく
各 resque 作業を使用しresque:workers
て、使用可能なすべてのキューをポーリングし、一度
メッセージはキューの任意のものから消費され、それに基づいて作業が開始されます
上記のキューに 1 つの作業のみを割り当てたい場合は、2 つのレーキを実行する方がよいでしょう。
このようなタスク
bundle exec rake resque:worker COUNT=4 QUEUE=critical,high,normal,low
bundle exec rake resque:work QUEUE=aggregate
aggregate
このようにして、キューに単一の resque ワーカーを割り当てることができます
この助けを願っています