2011-09-20 15 views
4

我的應用程序視圖從任何地方800-2000ms採取根據日誌加載。400 + MS開銷隨時隨地訪問軌CURRENT_USER

我注意到了一個頁面W 0訪問CURRENT_USER的時間爲10ms下... CURRENT_USER隨時訪問/它需要400毫秒只是爲了讓CURRENT_USER。

任何想法,爲什麼它這麼長時間來獲得CURRENT_USER?任何方式來追蹤滯後的表現?

謝謝

+0

聽起來像它可能是一個數據庫相關的問題,或可能某種中間件的運作錯誤。 – Seth

+4

查看日誌文件以查看執行的SQL語句。您可能必須根據用戶對象在嘗試構建當前用戶時如何查詢來添加索引。 –

+0

任何可能超時的before_filters?這也可能是文件系統損壞。檢查您的卷的文件系統。 – jschorr

回答

0

日誌應該顯示數據庫時間以及渲染時間。看看他們是否跟蹤。即高渲染時間總是意味着高數據庫時間。

有不同的方法來分析軌道,如果它不是一個數據庫的問題。

Railscasts #98 Request Profiling插曲是舊的,但它是一個什麼樣的Rails已經內置了對這些問題的一個樣本。