2012-06-19 241 views
1

當我們向Heroku部署新代碼時,我們經常會發現第一個請求(或對)發生應用程序錯誤。之後,一切運行良好。Heroku中部署/部署後的簡要應用程序錯誤

他們看來是請求超時:

2012-06-19T21:54:42+00:00 heroku[router]: Error H12 (Request timeout) -> GET www.mydomain.com/ dyno=web.2 queue= wait= service=30000ms status=503 bytes=0 

我們使用「麒麟」與3個進程,如果有任何可能的連接(是的,我也許應該只運行一個測試自己,但因爲它是間歇性和硬以確定我希望別人看到這一點)。也許增加獨角獸超時值有助於避免這種情況,但我想知道是否有一種部署方式,在部署前幾個客戶端之後不會導致如此大的延遲響應。

回答

1

確實有這樣一種方法可以避免這個問題的部署。您可以使用Heroku preboot labs feature

也可以看看這個Dev Center article on dealing with H12 request timeouts

+0

我實際上已經將這與Unicorn一起使用,除非有什麼改變,問題不一定由它解決。我們仍然遇到這個問題,主要是由於啓動時間太慢。最後切換回Thin爲我們解決它。 –