heroku resque,在heroku上的特定工作进程上运行特定队列

heroku resque,在heroku上的特定工作进程上运行特定队列,heroku,resque,Heroku,Resque,我有个问题。我正在heroku上使用resque。有5名工人和5个队列。 现在,我可以在特定的worker(比如worker 1)上运行特定的队列(比如queue4)了吗 不,你不能。Resque要求您在环境变量(或项目顶部的.Resque文件)中设置队列。 在heroku上,根据dyno的不同,不能有不同的环境变量 但是,您可以在程序文件中执行以下操作: urgent: QUEUE=urgent rake environment resque:work low: QUEUE=low rake

我有个问题。我正在heroku上使用resque。有5名工人和5个队列。
现在,我可以在特定的worker(比如worker 1)上运行特定的队列(比如queue4)了吗

不,你不能。Resque要求您在环境变量(或项目顶部的
.Resque
文件)中设置队列。
在heroku上,根据dyno的不同,不能有不同的环境变量

但是,您可以在
程序文件中执行以下操作:

urgent: QUEUE=urgent rake environment resque:work
low: QUEUE=low rake environment resque:work
您将获得两个不同的工作人员,并可以根据您的需要分别扩展这两个工作人员。

它们的运行方式类似,但具有不同的环境变量,使用不同的队列。

不,不能。Resque要求您在环境变量(或项目顶部的
.Resque
文件)中设置队列。
在heroku上,根据dyno的不同,不能有不同的环境变量

但是,您可以在
程序文件中执行以下操作:

urgent: QUEUE=urgent rake environment resque:work
low: QUEUE=low rake environment resque:work
您将获得两个不同的工作人员,并可以根据您的需要分别扩展这两个工作人员。

它们的运行方式相似,但具有不同的环境变量,使用不同的队列。

如果使用延迟作业,则此方法有效

在proc文件中

worker\u l:bundle exec rake作业:工作队列=worker\u l worker\m:bundle exec rake作业:工作队列=worker\m worker\u h:bundle exec rake作业:工作队列=worker\u h worker\u:bundle exec rake作业:工作队列=worker\u

然后


异步处理:do_it,:queue=>“worker_h”

如果使用延迟作业,则此操作有效

在proc文件中

worker\u l:bundle exec rake作业:工作队列=worker\u l worker\m:bundle exec rake作业:工作队列=worker\m worker\u h:bundle exec rake作业:工作队列=worker\u h worker\u:bundle exec rake作业:工作队列=worker\u

然后

异步处理:do\u it,:queue=>worker\u h