2012-10-16 57 views
1

每本文檔:運行在Phusion Passenger上的應用程序是否需要在fork上重新連接ActiveRecord?

http://www.modrails.com/documentation/Users%20guide%20Nginx.html#_smart_spawning_gotcha_1_unintentional_file_descriptor_sharing

套接字連接繼續智能產卵操作之後被共享。列出的示例適用於Memcached。

在這種情況下,是否還需要類似地重新連接ActiveRecord?喜歡的東西:

PhusionPassenger.on_event(:starting_worker_process) do |forked| 
     if forked 
      # We're in smart spawning mode. 
      ActiveRecord.establish_connection(...) 
     else 
      # We're in conservative spawning mode. We don't need to do anything. 
     end 
end 

回答

0

乘客會自動重新建立在創建新的工作進程與數據庫的連接,根據嚮導,所以你不應該這樣做。

您是否遇到任何會導致您認爲情況可能不是這樣的麻煩?

+0

我沒有遇到任何麻煩。我只是想確認是這樣。你能指點我說的這部分指南嗎?我正在看http://www.modrails.com/documentation/Users%20guide%20Nginx.html,並沒有看到任何關於此的內容。 – esilver

+0

它說在您發佈的鏈接的正下方,在代碼檢查下面,它說「請注意......」或許它可以更強調:) – Tinco

+0

最新的文檔在這裏:https://www.phusionpassenger.com /庫/深入的/紅寶石/ spawn_methods /#AM-I-負責換重建數據庫的連接 - 後 - 預加載,已經分叉的-A-子進程 – esilver

相關問題