Estoy ejecutando una aplicación Django en Apache con mod_wsgi. ¿Habrá algún tiempo de inactividad durante una actualización?Tiempo de inactividad al volver a cargar mod_wsgi daemon?
Mod_wsgi se ejecuta en modo daemon, por lo que puedo volver a cargar mi código tocando el archivo de script .wsgi, como se describe en el documento "ReloadingSourceCode": http://code.google.com/p/modwsgi/wiki/ReloadingSourceCode. Presumiblemente, esa recarga requiere una cantidad de tiempo distinta de cero. ¿Qué sucede si una solicitud entra durante la recarga? ¿Apache pondrá en cola la solicitud y luego la completará una vez que el daemon wsgi esté listo?
La documentación incluye la siguiente declaración:
Por lo tanto, si usted está usando Django en modo demonio y tenía que cambiar su archivo 'settings.py', una vez que haya realizado el cambio es necesario, también tocar el archivo de script que contiene el punto de entrada de la aplicación WSGI. Una vez hecho esto, en la siguiente solicitud, el proceso se reiniciará y se volverá a cargar la aplicación Django.
Para mí, eso sugiere que Apache manejará con gracia cada solicitud, pero pensé que podría preguntar para estar seguro. Mi aplicación no es crítica (un pequeño tiempo de inactividad no sería desastroso) por lo que la pregunta es principalmente académica.
Gracias.
Esta información de fondo adicional es excelente. Solo había pensado en nuevas solicitudes, no en solicitudes anteriores de larga duración, pero lo que describes tiene mucho sentido. Gracias. – AndrewF
FWIW, mod_wsgi 4.0 comenzará a introducir algunas opciones de recarga ligeramente más elegantes cuando esté disponible. –