Pregunta

Estoy corriendo una aplicación que se inicia un proceso de Rufus Programador en un inicializador. La aplicación se está ejecutando con el pasajero en la producción y me he dado cuenta de un par de comportamientos extraños:

En primer lugar, con el fin de reiniciar el servidor y asegúrese de que el inicializador se ejecute, lo que tienes que tanto touch tmp/restart.txt y cargar la aplicación en un navegador. En ese momento, los fuegos de inicializador. Lo horrible es que si sólo lo hace al tacto, los procesos programados por Rufus reconfiguradas y no se reprograman hasta que cargue la aplicación en un navegador.

Esto por sí solo puedo tratar. Pero esto nos lleva al segundo problema: Me dará cuenta de que el proceso programado no se ha ejecutado, por lo que me carga una página y de repente el archivo de registro se me dice que se está ejecutando los inicializadores como si hubiera reiniciado. Por lo tanto, en algún momento, los pasajeros se está reiniciando aleatoriamente como si hubiera tocado tmp / restart.txt y acabando con mis procesos programados.

Tengo una muy mala comprensión de los pasajeros y la integración de los rieles, así que no sé si este reinicio ocasional es aberrante o parte de la arquitectura. ¿Puede cualquier persona ofrecer la sabiduría en esta situación?

¿Fue útil?

Solución

Lo que usted describe es la obra de pasajeros manera. Se genera nuevas instancias de la aplicación cuando el tráfico les garantiza, y las desactiva después de períodos de inactividad para liberar recursos.

Usted debe leer la documentación de pasajeros, en particular el href="http://www.modrails.com/documentation/Users%20guide.html#_resource_control_and_optimization_options" rel="nofollow noreferrer"> de control de recursos y la sección . Hay ajustes que pueden impedir que la aplicación se cerrará por pasajero, si eso es lo que desea.

Con el ajuste PassengerPoolIdleTime, se podía mantener en funcionamiento al menos un proceso, pero es casi seguro que desee pasajero para poner en marcha otras instancias de la aplicación según sea necesario. Este hilo en el Rufus Programador Google Grupo menciona el uso de archivos de bloqueo para evitar que más de un proceso de iniciar el planificador, que puede ser útil para usted.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top