在Resque中,如果我有以下内容:
bundle exec rake resque:work QUEUE=critical,high,normal,low,aggregate
我如何表明我只需要一个,而且只需要一个工作人员来处理特定队列(即聚合队列)?
答案 0 :(得分:3)
我认为不可能
如果您查看当前代码超过here
的原因Resque poll all the queue
value = @redis.blpop(*(queue_names + [1])) until value
其中queue_names是您的critical,high,normal,low,aggregate
所以这里的重点无论你是否使用单一的resque工作或多工人
使用resque:workers
每个resque工作轮询所有可用队列和
消息
如果你只想为上面的队列分配一个工作,那么最好运行两个rake
像这样的任务
bundle exec rake resque:worker COUNT=4 QUEUE=critical,high,normal,low
bundle exec rake resque:work QUEUE=aggregate
这样您就可以为aggregate
队列
希望这个帮助