幾個Ruby的應用程序,我用掛在電話較慢導致最終需要重新啓動機器上的進程備份工作了很長一段時間。 Passenger中是否有一種快速簡單的方法來限制單個Apache呼叫的執行時間。紅寶石mod_passenger過程超時
在PHP如果一個進程超出了最大執行時間在php.ini的處理設置錯誤返回給Apache和服務器保持歡快地埋頭苦幹。
幾個Ruby的應用程序,我用掛在電話較慢導致最終需要重新啓動機器上的進程備份工作了很長一段時間。 Passenger中是否有一種快速簡單的方法來限制單個Apache呼叫的執行時間。紅寶石mod_passenger過程超時
在PHP如果一個進程超出了最大執行時間在php.ini的處理設置錯誤返回給Apache和服務器保持歡快地埋頭苦幹。
我想看看固定的應用。在網絡服務器級別切斷請求實際上更像是一種樂隊幫助,而不是解決核心問題 - 這就是請求失敗。如果紅寶石的應用程序是依賴於已超時其他的服務,您可以修補這樣的代碼,使用timeout.rb庫:
require 'timeout'
status = Timeout::timeout(5) {
# Something that should be interrupted if it takes too much time...
}
這將讓代碼「放棄」,並關閉了該請求優雅地在需要時。
,但照顧,timout不是線程安全的... – Lichtamberg
不能幫你的乘客,只是檢查,並不能找到乘客文檔的任何選項。我們使用nginx +獨角獸,它支持超時。安裝起來有點複雜,但有一些優點。例如獨角獸別閒着出像乘客工人(然後需要重新啓動,這會導致響應時間長一些用戶) –