2013-08-05 60 views
1

到目前爲止,我正在使用瘦服務器。我打算切換到麒麟一些併發添加到Web DYNOS,我很擔心,因爲我通過this文章閱讀,我發現這個代碼:Heroku中的Resque與獨角獸 - 我應該擔心嗎?

before_fork do |server, worker| 
    # ... 

    # If you are using Redis but not Resque, change this 
    if defined?(Resque) 
    Resque.redis.quit 
    Rails.logger.info('Disconnected from Redis') 
    end 
end 

after_fork do |server, worker| 
    # ... 

    # If you are using Redis but not Resque, change this 
    if defined?(Resque) 
    Resque.redis = ENV['REDIS_URI'] 
    Rails.logger.info('Connected to Redis') 
    end 
end 

我真的不明白爲什麼需要驗證碼如果我在使用Resque時添加或不添加。

你們認爲如果我使用Resque工作人員時切換到Unicorn,應該考慮什麼?

回答

0

獨角獸是一個分叉,多進程的服務器。它將您的Rails環境加載到一個進程中,然後分派一些工作人員。使用fork使其複製整個父進程,包括任何打開的連接到數據庫,內存緩存,Redis的等等

爲了解決這個問題,你應該重新連接在after_fork塊中的任何活動連接如圖所示的例子。您只需重新連接您正在使用的連接/服務。

相關問題