嗨,是否可以在开发中同时运行多个 Resque 工作人员?我找到了这段代码,但不确定它是否会起作用以及如何..
到目前为止,我正在使用标准
bundle exec env rake resque:work QUEUE='*'
redis-server /usr/local/etc/redis.conf
嗨,是否可以在开发中同时运行多个 Resque 工作人员?我找到了这段代码,但不确定它是否会起作用以及如何..
到目前为止,我正在使用标准
bundle exec env rake resque:work QUEUE='*'
redis-server /usr/local/etc/redis.conf
您需要添加一个COUNT
环境变量,然后更改resque:work
为resque:workers
. 例如,要启动 3 个工人:
bundle exec env rake resque:workers QUEUE='*' COUNT='3'
我知道如何做到这一点的唯一方法,我认为这是一个很好的方法,它使用 Foreman(与 heroku 使用的相同)。
您在名为Procfile的文件中定义您的流程,例如:
web: bundle exec thin start -p $PORT
worker: bundle exec rake resque:work QUEUE=*
clock: bundle exec rake resque:scheduler
然后您只需一个命令即可启动您的应用程序
foreman start
要启动一种类型的多个进程,如下所示:
foreman start -c worker=2
https://github.com/ddollar/foreman
http://blog.daviddollar.org/2011/05/06/introducing-foreman.html