2011-04-29 59 views
3

我有一個應用程序,嚴重依賴於後臺處理,我想有一個單獨的Linode實例出於性能原因的delayed_job工作。我發現this really helpful post關於能夠在不需要啓動Apache的情況下在不同服務器上運行DJ工作人員,看起來這就是我將如何設置事物。在Linode上使用Capistrano的延遲作業的單獨工作服務器?

我的問題是我如何去配置Capistrano將我的應用程序部署到兩臺服務器,只運行實際的網絡從一個結束,並使用另一個爲DJ?我會做這樣的事嗎?

role :web, "domain.com" 
role :app, "domain.com", "workers.domain.com" 
role :db, "domain.com", :primary => true 
+0

看看這兩個問題:http://stackoverflow.co m/questions/7210715/before-after-hooks-for-only-particular-roles-for-library-provided-recipes http://stackoverflow.com/questions/4621817/rails-can-i-run-backgrounds-jobs -in-A-不同的服務器 – 2011-08-26 21:29:00

回答

1

您可以設置延遲就業增加給你的食譜一個單獨的服務器角色:

set :delayed_job_server_role, :utility 

然後,重視這個角色你的工人(實用)服務器:

role :web, "domain.com" 
role :app, "domain.com" 
role :db, "domain.com", :primary => true 
role :utility, "workers.domain.com" 

欲瞭解更多信息: https://github.com/collectiveidea/delayed_job/wiki/Rails-3-and-Capistrano