Mongrel の実行中に Rails アプリを再起動する方法はありますか (たとえば、プラグイン/構成ファイルを変更した場合)。または、Mongrel をすばやく再起動します。雑種はあなたができるこれらのヒントを与えますが、どうやってそれをしますか?
** 信号準備完了。用語 => 停止。USR2 => 再起動します。INT => 停止 (再起動なし)。
** Rails シグナルが登録されました。HUP => リロード (再起動なし)。うまくいかない場合があります。
Mongrel の実行中に Rails アプリを再起動する方法はありますか (たとえば、プラグイン/構成ファイルを変更した場合)。または、Mongrel をすばやく再起動します。雑種はあなたができるこれらのヒントを与えますが、どうやってそれをしますか?
** 信号準備完了。用語 => 停止。USR2 => 再起動します。INT => 停止 (再起動なし)。
** Rails シグナルが登録されました。HUP => リロード (再起動なし)。うまくいかない場合があります。
最初に、次のようなもので現在の雑種の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をPID18481でMongrelに送信しています...完了しました。
私はこれを使用して、MySQLの問題への恐ろしい「壊れたパイプ」から回復します。
アプリのクラスターの構成が別の場所にある場合は、 -c オプションを追加できます。
mongrel_rails cluster::restart -c /path/to/config
Railsのホームディレクトリに
mongrel_rails cluster::restart
例えば、
killall -USR2 mongrel_rails