我正在運行一個已部署的rails web服務器,並且遇到內存問題。每次我嘗試調用sendmail時,都會收到Errno :: ENOMEM錯誤。當我在服務器上運行'top'時,它顯示出2個ruby1.8進程正在運行,每個進程消耗大約40%的內存。這是由我的代碼泄漏造成的,還是我啓動了兩個同時進行的ruby進程?紅寶石和鐵軌性能問題,服務器
這兩個進程都由我的部署者帳戶運行,然後在我推送到我的生產git存儲庫(使用pushand)時調用它們。我試圖找出是否這是自然的(即服務器需要升級),或者如果我在我的設置中有某種錯誤。我最近將RAM從256 MB升級到了512 MB,之前沒有這個問題。
問題是防止訪問者創建用戶,因爲應用程序在他們應該收到激活電子郵件時會拋出錯誤。
請注意,我在apache和乘客的ubuntu安裝上運行rails 2.1.0。
當我重新啓動Apache內存使用率急劇下降。我已經將PoolIdleTime設置從1天減少到300秒,所以現在和再次的乘客程序都會被殺死。 – kalusn 2011-03-16 12:37:56
我也在研究Rack :: Bug,Oink和Memorylogic。我發現[link](http://www.engineyard.com/blog/2009/thats-not-a-memory-leak-its-bloat/)非常有用。 – kalusn 2011-03-16 12:39:14
雖然問題仍然存在。我會嘗試和優化領域,如果我找到答案,回到這裏。 – kalusn 2011-03-16 13:27:03