Empecé a alojar sitios hace un tiempo usando Cherokee. Para fuentes externas (FastCGI, etc.) tiene una opción para iniciar el proceso si no puede encontrar uno ejecutándose en el socket o puerto designado. Esto es genial porque significa que si PHP o un sitio de Django se cae (como lo hacen ocasionalmente), se reinicia automáticamente.
En un nuevo servidor que usa PHP-FPM no pude usar Cherokee (tiene un error con PHP), así que me mudé a NGINX. Realmente me gusta NGINX (por su estilo de configuración) pero estoy teniendo serios problemas con los procesos que se caen y nunca reaparecen. PHP hace esto a veces, pero los sitios de Django son más problemáticos. He creado scripts de inicio para ellos y aparecen en el arranque, pero esto no me ayuda si se desconectan entre reinicios.
Supongo que estoy buscando un proxy FastCGI. Algo que, como Cherokee, sabe qué procesos deberían ejecutarse en qué sockets / puertos y los reaparece a pedido. ¿Existe tal cosa? ¿Hay alguna forma de construir esto en NGINX (para facilitar la configuración)?
/etc/init.d/apachectl
él. A menudo necesita reescribir su propio script de inicio simple para usarexec
. Aunque me encantaría ver algunos ejemplos más usando Daemontools