ruby-on-rails mongrel

ruby on rails - ¿Cómo se reinicia Rails en Mongrel, sin detenerse e iniciar Mongrel?



ruby-on-rails (4)

¿Hay alguna manera de reiniciar la aplicación Rails (por ejemplo, cuando ha cambiado un archivo de complemento / configuración) mientras Mongrel se está ejecutando? O, como alternativa, reinicie rápidamente Mongrel. Mongrel da estas pistas de que puedes, pero ¿cómo lo haces?

** Señales listas. TERM => detener. USR2 => reiniciar. INT => detener (no reiniciar).

** Señales de rieles registradas. HUP => recargar (sin reiniciar). Puede que no funcione bien.


Por ejemplo,

killall -USR2 mongrel_rails


Puede agregar la opción -c si la configuración para el clúster de su aplicación está en otro lugar:

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


en el directorio de inicio de sus raíles

mongrel_rails cluster::restart


Primero descubra la ruta de pid de mongrel actual con algo como:

> ps axf | fgura mestizo

Verás una línea de proceso como:

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 desarrollo -P / home / xxyyzz / rails / myappname / tmp / pids / mongrel.pid -d

Toma la parte ''-P /home/xxyyzz/rails/myappname/tmp/pids/mongrel.pid'' y úsalo así:

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

Envío de USR2 a Mongrel en PID 18481 ... Listo.

Utilizo esto para recuperarme del temido "Tubo roto" al problema de MySQL.