差不多2年前我寫了web應用程序並將它部署在heroku上。既然,我只是保持了一點,所以我對Rails並不是最新的。50秒讓我從heroku導航服務器得到回覆
我有嚴重的生產問題,我需要儘快解決。這是一個平靜的API。
curl http://myserver.com/users/1
現在需要50秒。它沒有被緩存。但是:
curl http://myserver.com/users
需要100毫秒,它被緩存。
也許DB訪問問題?諾普!我做了:
> app.get 'users/1'
我在60毫秒內得到了答覆。
也許渲染問題? NOP,我重寫控制器的方法是這樣的:
def show
render json: 'foo'
end
這是一樣的,它需要50秒,得到了響應:'foo'
然後,我插入插件NewRelic的:沒有潛伏期已被發現。
我唯一的記錄是:
我不要求的解決方案:
2014-07-12T17:04:44.650173+00:00 heroku[router]: at=info method=GET path="https://stackoverflow.com/users/1" host=www.-----.net request_id=323db6cf-73c0-459f-928a-dd88e1229779 fwd="89.156.00.00" dyno=web.1 connect=1 service=182 status=200 bytes=342
(/獲取客戶端響應之前得到)。我在問:我可以調查什麼/在哪裏?
chrome/firefox開發者工具的網絡選項卡告訴你什麼?它應該指出需要這麼長時間來回應的組件 – dax
這太奇怪了:我得到了200代碼,然後我在等待repsonse,這裏是時間:阻塞:0.9毫秒發送:0.1毫秒等待:92毫秒接收: 59秒(它總是59秒) – vpoulain
可能與我的[post here]有關(http://stackoverflow.com/questions/24717495/slow-page-load-on-heroku) –