2013-04-15 60 views
0

我正在開發Rails應用程序,並且在開發過程中使用SQLite,速度非常快。慢速遠程查詢

我已經開始使用Amazon託管的遠程MySQL數據庫,並且查詢時間變得非常慢。除了試圖優化遠程數據庫之外,Rails還有什麼可以做的事情?

+0

這是非常開放的。你有什麼更具體的,我們可以運行測試針對?你確定它是SQLite vs. MySQL,例如您是否在兩個系統中使用類似(理想相同)的數據進行測試?你確定這是不是你的Rails應用程序和亞馬遜之間的網絡時間? – Alkini

+0

延遲可能是對MySQL查詢的謀殺。您確定您的服務器與Amazon數據庫實例有良好的連接嗎? – tadman

回答

0

本地數據庫訪問與遠程將顯示速度的顯着差異。由於您沒有提供任何細節,因此我無法解決問題,但我可以提出建議:

嘗試caching儘可能地查詢您的查詢和意見。這將減少您需要執行的查詢量。這對於菜單等靜態數據尤其適用。

Optimization是關鍵。確保儘可能多地消除不必要的查詢,並且只使用select方法請求所需的字段。

0

描述涉及的各種組件。數據庫服務器本身就是其中之一。網絡延遲是另一個。雖然第二個可能沒有什麼可以做的,但可能你可以調整第一部分。從分析查詢開始,並調整服務器本身。

知道在哪裏尋找將幫助您從最佳方法開始。至於緩存,請始終牢記這一點,但這取決於應用程序的性質,可能證明存在相當大的問題。