所以我有這個軌道應用程序與一個可怕的內存泄漏問題。我在Heroku上運行它,在過去的幾天裏,我一直試圖弄清楚究竟是什麼導致了它,我不得不每隔5個小時不斷重啓應用程序,或者內存超過512,我的應用程序崩潰。Rails應用程序中的內存泄漏...字符串噩夢
我正在使用Oink,而且我沒有看到任何與我實例化的類有任何可疑的地方。唯一的一點是每次頁面加載時,使用的內存都會增加。它甚至不關心我加載哪個頁面,這看起來是隨機的。
New Relic也沒有太多的幫助,因爲它不需要做任何一個特定的控制器操作。
我唯一能找到的就是使用ObjectSpace,它在內存中顯示了大量的字符串對象,並且這個數字只是增長和增長。我使用了一個小工具來記錄字符串的值,它們都是空白的。不是零,而是空白。我的產品應用程序定期使用超過200,000個字符串對象。
有沒有人知道這些可能來自哪裏?這真的讓我不得不每隔五個小時在我的電腦上讓我的網站保持活躍。
謝謝!
除了只是刪除代碼之外,很難給出具體的建議,除非您有儘可能最小的示例展示問題併發布 –
並在替代服務器上運行它,並用常量CURL請求點擊它,直到您可以重新生成爲止。 – peterept
建議:不要做'string = string1 + string 2',也不要'string + = string1'。做:'string << string 1',沒有附加字符串是這樣創建的 – apneadiving