2010-01-24 134 views
1

好的。我知道我沒有很多信息。這就是本質上,我的問題的原因。我在後端使用Flash/Flex和Rails構建遊戲。兩者之間的溝通是通過WebORB進行的。隨着時間的推移,響應時間隨着時間的推移而增加(惡化)

這是發生了什麼事。當我啓動客戶端時,一個操作每60秒調用一次服務器(不是很多,對不對?),這會導致兩個數據庫SELECTS和一個UPDATE以及由此產生的對客戶端的響應。

這每60秒重複一次。我在heroku上部署了一個測試版本,NewRelic的RPM告訴我響應時間會隨着時間的推移而降低。一個客戶端每60秒一個任務。在幾個小時內,響應時間從150ms減少到900ms以上。

我已經能夠在我的開發環境(我的Macbook Pro)中重現這一點,所以它在Heroku方面不是問題。

我沒有做任何複雜的(設計)在服務器應用程序。一個動作被調用,從數據庫獲取一些數據,執行AR更新,然後返回響應。沒有緩存等。

有什麼想法?任何人?我真的很感激它。

回答

0

對於這些請求,開發日誌會說什麼緩慢?視圖還是數據庫?如果是數據庫,請檢查數據庫中有多少條記錄,並查看如何優化查詢。也許你需要索引一些字段。

0

您是在開發還是生產模式下本地運行?我發現Rails應用程序在開發模式下的性能隨着時間的推移會降低速度(內存使用率)。我不確定是否可以在開發模式下運行Heroku上的應用程序,但如果我是你,我會檢查它。

相關問題