我添加 Resque调度器在我的应用程序在Heroku

所以...我需要一家独和不同的工作人员充当调度和 许多这样的作业。

这是如何我已经做到了:点击 我有一个独特的Heroku应用,该应用什么也不做,但有1 resque调度工人,全天候运行,加入 Resque 任务的“遥远” Redis的DB 主要应用

(I做映射的工作:工作任务为 resque:调度 resque:工作

这是做了Heroku的平台上的最佳方式;还是我这样做完全错了吗?

谢谢!

编辑: 对于在Heroku调度最小的应用程序: http://github.com/clmntlxndr/heroku-scheduler

UPDATE:和在Heroku和Procfiles新CEDAR堆,则可能启动一个不同的任务为每个工人

web:        bundle exec rails server -p $PORT
scheduler:  bundle exec rake resque:scheduler
worker:     bundle exec rake jobs:work

http://devcenter.heroku.com/articles/procfile

有帮助吗?

解决方案

我想我误解你的问题的第一次。我错过其中调度器需要一个单独的rake任务的部分。

是的,我认为这样做是有两个独立的Heroku应用程序的唯一途径,因为Heroku的工人将只运行rake jobs:work想必你只能映射到这个的resque耙任务之一。

您可以试试这个:

desc "Alias for resque:work (To run workers on Heroku)"
task "jobs:work" => ["resque:work", "resque:scheduler"]

但我想过这真诚的怀疑实际上的Heroku如何监控工作进程和东西正常工作。此外,仔细检查语法耙那里;它只是从内存中的。我知道这是可能的,虽然指定多个相关性。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top