2008-09-16 112 views
8

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

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

**注册导轨信号。 HUP =>重新加载(不重新启动)。它可能无法正常工作。

回答

3

例如,

killall -USR2 mongrel_rails 
4
在轨

主目录

mongrel_rails cluster::restart 
5

您可以添加-c选项,如果你的应用程序的集群的配置是在别处:

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

首先发现当前的杂种pid路径,如:

> ps axf | fgrep一样杂种

,你会看到的生产线,如:

红宝石/usr/lib64/ruby/gems/1.8/gems/swiftiply-0.6.1.1/bin/mongrel_rails开始-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/ho我/ XXYYZZ /导轨/ myappname的/ tmp /的PID/mongrel.pid

发送USR2在PID 18481至杂种...完成。

我用它从可怕的“Broken pipe”中恢复到MySQL问题。

+0

谢谢,这真的帮助了我们。 – codeulike 2010-12-06 11:03:25