【问题标题】:How do you restart Rails under Mongrel, without stopping and starting Mongrel如何在 Mongrel 下重启 Rails,而不停止和启动 Mongrel
【发布时间】:2010-09-09 14:35:20
【问题描述】:

有没有办法在 Mongrel 运行时重新启动 Rails 应用程序(例如,当您更改插件/配置文件时)。或者快速重启 Mongrel。 Mongrel 给出了这些提示,你可以,但你怎么做呢?

** 信号准备就绪。期限 => 停止。 USR2 => 重启。 INT => 停止(不重新启动)。

** Rails 信号已注册。 HUP => 重新加载(无需重新启动)。可能效果不好。

【问题讨论】:

    标签: ruby-on-rails mongrel


    【解决方案1】:

    第一次发现当前的 mongrel pid 路径,例如:

    >ps axf | fgrep 杂种

    您将看到如下流程:

    ruby /usr/lib64/ruby/gems/1.8/gems/swiftiply-0.6.1.1/bin/mongrel_rails start -p 3000 -a 0.0.0.0 -e development -P /home/xxyyzz/rails/ myappname/tmp/pids/mongrel.pid -d

    获取 '-P /home/xxyyzz/rails/myappname/tmp/pids/mongrel.pid' 部分并像这样使用它:

    >mongrel_rails restart -P /home/xxyyzz/rails/myappname/tmp/pids/mongrel.pid

    将 USR2 发送到 PID 18481 的 Mongrel...完成。

    我用它来从可怕的“断管”问题中恢复到 MySQL。

    【讨论】:

    • 谢谢,这真的帮助了我们。
    【解决方案2】:

    如果您的应用集群的配置位于其他位置,您可以添加 -c 选项:

    mongrel_rails cluster::restart -c /path/to/config
    

    【讨论】:

      【解决方案3】:

      在你的 Rails 主目录中

      mongrel_rails cluster::restart
      

      【讨论】:

        【解决方案4】:

        例如,

        killall -USR2 mongrel_rails
        

        【讨论】:

          猜你喜欢
          • 2010-11-14
          • 2012-03-26
          • 2012-02-09
          • 1970-01-01
          • 2012-10-06
          • 2011-04-04
          • 2010-11-30
          • 2011-09-18
          • 2011-07-10
          相关资源
          最近更新 更多