我的環境是rails 3.1,heroku bamboo stack,delayed_job_active_record,(https://github.com/collectiveidea/delayed_job)並試用了hirefire。 (https://github.com/meskyanichi/hirefire) - 我可以看到delayed_job隊列文檔,但我如何將這個應用於heroku?如何將工作人員分成延遲工作+ heroku工作池?
我有一組最高優先級的任務,每隔一小時產生一次,我需要專門爲3名工作人員工作,大約需要26分鐘才能完成。在此期間,不太重要的背景任務需要繼續,可能有1名工作人員專門負責這些任務。
因此,我將設置該優先級任務塊爲一個命名隊列,例如, 'hourtask',然後命名隊列中的其他所有'everythingelse':)
問題是,我該如何將heroku工作者分配給特定隊列?根據文檔,這與環境變量有關嗎?它說:
# Set the --queue or --queues option to work from a particular queue.
$ RAILS_ENV=production script/delayed_job --queue=tracking start
$ RAILS_ENV=production script/delayed_job --queues=mailers,tasks start
但我不熟悉heroku安裝程序來解決如何將這個應用到我的heroku生產環境?
我的問題是,如果我擴展到heroku上的4名工作人員,我如何設置其中的3個來執行關閉的命名隊列a,並且其中的1個專門處理命名的隊列b。 – Dave 2012-03-26 16:51:57
已更新的答案。 – 2012-03-26 16:58:25
「Procfile和進程管理命令(heroku run和heroku scale)僅在Cedar堆棧上可用。」 - 我在Bamboo上,不知道如何配置,但不能使用procfile我不覺得? HTTP://devcenter.heroku。com/articles/procfile – Dave 2012-03-26 17:15:50