Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用 Resque 在 Heroku 上进行大量数据处理。
使用 NewRelic,我发现我的任务使用了 15% 的 CPU 份额和每个实例 50mo RAM 之类的东西。
我可以只使用一个测功机来处理 5 个工作。
但我不知道该怎么做。
我尝试在 procfile 中使用 COUNT=5,但它似乎不起作用。此外,ResqueRetry 不会以这种方式看到失败的工作......
有人会知道该怎么做吗?
你需要对你的 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 个作业同时被处理。