我在Heroku上使用Resque进行大量数据处理。
使用NewRelic,我发现我的任务使用了15%的CPU份额和每个实例50mo RAM的东西。
我只能使用一个dyno处理5个作业。
但我不知道该怎么做。
我试图在proc文件中使用COUNT = 5,但它似乎不起作用。此外,ResqueRetry不会以这种方式看到失败的工作......
有人会知道怎么做吗?
答案 0 :(得分:0)
您需要对Procfile执行一些操作
首先添加COUNT环境变量,然后将命令从resque:work更改为resque:workers
这是一个例子
resque: env TERM_CHILD=1 RESQUE_TERM_TIMEOUT=10 COUNT=2 QUEUE=* bundle exec rake resque:workers
我只用1个resque dyno在Heroku上测试了这个解决方案,看到我发送的2个作业一次处理。