我正在运行一个已部署的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