【问题标题】:rails console doesn't load导轨控制台不加载
【发布时间】:2009-08-03 20:26:55
【问题描述】:

今天,无缘无故,我的 rails(2.1.0) 应用程序非常慢,甚至没有响应。 它间歇性地发生。 所以有时它会起作用,但又不起作用。

当它不起作用时,我什至无法加载“脚本/控制台制作”。 我想知道它卡在哪里了。 如何逐步加载控制台,以便知道是哪个部分导致了问题?

谢谢。

山姆

【问题讨论】:

    标签: ruby-on-rails console debugging


    【解决方案1】:

    您的服务器可能内存不足,因此机器无法响应您。如果您正在运行 mongrel,则对其进行 monit 以限制它可以使用的内存并在必要时重新启动。

    如果您正在使用Passenger,请尝试限制实例数量,如果您已经这样做了,请查找一个脚本,该脚本通过cron作业在太大时杀死乘客实例。

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

    【讨论】:

    • 是的。事实证明,有人正在运行一个平均脚本,占用了服务器的大部分资源。
    【解决方案2】:

    如果可以,请尝试暂时删除所有插件/宝石,看看应用程序是否会启动。其中之一可能是问题所在。

    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 文件,看看您是否可以确定哪个部分无法正常工作。祝你好运!

    【讨论】:

      【解决方案3】:

      当所有其他方法都失败时,您应该能够使用 strace 来调试脚本/应用程序实际在做什么。请注意,这应该只是最后的手段之一,因为它会产生极其冗长的信息(并且也主要限于 I/O 操作)。

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

      【讨论】:

        猜你喜欢
        • 2014-08-27
        • 1970-01-01
        • 2011-06-05
        • 1970-01-01
        • 1970-01-01
        • 2015-07-03
        • 2017-04-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多