2014-07-12 30 views
0

差不多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(/獲取客戶端響應之前得到)。我在問:我可以調查什麼/在哪裏?

+0

chrome/firefox開發者工具的網絡選項卡告訴你什麼?它應該指出需要這麼長時間來回應的組件 – dax

+0

這太奇怪了:我得到了200代碼,然後我在等待repsonse,這裏是時間:阻塞:0.9毫秒發送:0.1毫秒等待:92毫秒接收: 59秒(它總是59秒) – vpoulain

+0

可能與我的[post here]有關(http://stackoverflow.com/questions/24717495/slow-page-load-on-heroku) –

回答

0

我發現Twitter上的信息,因爲我有同樣的問題。

這似乎與websockets有關。禁用它似乎可以解決這些問題。

heroku labs:disable websockets -a myapp -p production 

這使得它的工作,因爲它用,但日誌現在看起來不同:)

感謝@dwaynemac在twitter上@stephane_tavera。

編輯

Heroku上顯示這是一個解決問題,但答案在適用情況下,它再次發生。

https://status.heroku.com/incidents/649#update-2163

+0

是的,它似乎是固定的!感謝您分享信息 – vpoulain

1

它僅在服務器後,並沒有在一段時間打?如果Heroku未使用,Heroku將會停止服務器,並且需要一段時間才能啓動服務器。

相關問題