¿Qué sucede con las nuevas conexiones durante la recarga de nginx?

¿Qué sucede con las nuevas conexiones durante la recarga de nginx?

Cuando nginx se recarga, el proceso maestro primero verifica la validez de la sintaxis y luego intenta aplicar una nueva configuración. Si esto tiene éxito, inicia nuevos procesos de trabajo y envía mensajes a los procesos de trabajo antiguos solicitándoles que se cierren correctamente.

¿Cuándo envía el proceso maestro un mensaje de cierre a los procesos de trabajo antiguos? ¿Es en paralelo a la creación de nuevos procesos de trabajo o solo después de que los nuevos procesos de trabajo estén activos?

¿Quiere saber si la recarga de nginx lleva más tiempo, durante la duración de la recarga podrá manejar nuevas conexiones?

Respuesta1

Esto esde los documentos de nginx:

Para que nginx vuelva a leer el archivo de configuración, se debe enviar una señal HUP al proceso maestro. El proceso maestro primero verifica la validez de la sintaxis y luego intenta aplicar una nueva configuración, es decir, abrir archivos de registro y nuevos sockets de escucha. Si esto falla, revierte los cambios y continúa trabajando con la configuración anterior. Si esto tiene éxito, inicia nuevos procesos de trabajo y envía mensajes a los procesos de trabajo antiguos solicitándoles que se cierren correctamente. Los procesos de trabajo antiguos cierran los sockets de escucha y continúan atendiendo a los clientes antiguos. Una vez que se ha atendido a todos los clientes, se cierran los procesos de trabajo antiguos.

Un antiguo proceso de trabajo se mantiene vivo para servir a las conexiones. El antiguo trabajador se despide si se pueden incorporar a los nuevos trabajadores. De lo contrario, nginx reinicia a los trabajadores antiguos.

También hay un ejemplo detallado del proceso en los documentos.

¡Espero que esto ayude!

información relacionada