我的Ruby on Rails應用程序正在Heroku上運行,其中具有512兆字節RAM的測功機。它幾乎是從應用程序啓動時使用的所有RAM,並且從那裏只會變得更糟。我沒有在啓動時從數據庫加載大量數據,所以不明白爲什麼它使用了太多的內存。如何在Rails應用程序的內存中剖析生產紅寶石
如何在生產環境中分析我的應用程序,以便了解內存使用情況來自哪裏?我明白我可以選擇添加另一個測功機或增加測功機的記憶,但我想先了解發生的事情。
我的Ruby on Rails應用程序正在Heroku上運行,其中具有512兆字節RAM的測功機。它幾乎是從應用程序啓動時使用的所有RAM,並且從那裏只會變得更糟。我沒有在啓動時從數據庫加載大量數據,所以不明白爲什麼它使用了太多的內存。如何在Rails應用程序的內存中剖析生產紅寶石
如何在生產環境中分析我的應用程序,以便了解內存使用情況來自哪裏?我明白我可以選擇添加另一個測功機或增加測功機的記憶,但我想先了解發生的事情。
Heroku有一個log-runtime-metrics
功能來監視內存使用情況。
您可以運行這個來啓用:
heroku labs:enable log-runtime-metrics
和內存使用情況將在服務器日誌中看到。
請參閱Heroku Labs: log-runtime-metrics瞭解更多信息。
此外,您可以使用New Relic進行內存分析。
查看documentation瞭解更多詳情。
,我建議對於內存分析的另一個真棒資源是rbkit
什麼'htop'? =) –
我看過這個,但我使用Mac OSX,而htop似乎是該操作系統的bug。 – Obromios
您是否無法模擬開發環境中的泄漏?開發環境中的內存使用情況如何? – Emil