2009-08-03 95 views
0

今天,无缘无故,我的导轨(2.1.0)应用程序非常缓慢甚至没有响应。 它间歇性地发生。 所以有时它可以工作,但它又不起作用。导航控制台不加载

当它不起作用时,我甚至无法加载'script/console production'。 我想知道它卡在哪里。 如何逐步加载控制台,以便我可以知道哪个部分导致问题?

谢谢。

山姆

回答

1

您的服务器上可能没有足够的内存,因此机器无法响应您的请求。如果您正在运行杂种狗,那么请注意它以限制它可以使用的内存并在必要时重新启动。

如果您使用的是Passenger,请尝试限制实例的数量,并且如果您已经完成了查找脚本,该脚本在cron作业中过大时会杀死乘客实例。

如果这不是内存问题,那么我可能需要更多的信息。

+0

是的。事实证明,有人正在运行一个平均脚本,占用了大部分服务器的资源。 – 2009-08-05 15:47:20

0

当一切都失败了,你应该能够使用strace的调试的脚本/应用程序实际做的事情。请注意,这应该只是最后一个度假胜地之一,因为它会产生非常详细的信息(并且大多限于I/O操作)。

尝试使用“strace的脚本/控制台生产”例如

1

如果你有能力,尝试暂时删除所有的插件/宝石,看看应用程序将启动。其中之一可能是这个问题。

script/console文件包含这一项。

#!/usr/bin/env ruby 
require File.dirname(__FILE__) + '/../config/boot' 
require 'commands/console' 

您可以在Rails 2.1中找到commands/console file here

我推荐加载irb并尝试从那里加载你的应用程序。

require 'config/boot' 

如果这样的作品,然后尝试通过提到commands/console script其余步进找出哪些部分是问题。

如果启动文件无法加载,请查看config/boot.rb文件,看看您是否可以确定哪个部分无法工作。祝你好运!