Al iniciar apache2 se inician tres procesos

Al iniciar apache2 se inician tres procesos

Me gustaría saber por qué el comando para iniciar el servidor Apache2 en realidad inicia tres procesos.

De hecho, escribiendo este comando:

sudo apache2ctl -k start

luego, escribiendo este comando:

ps aux | grep apache2

Da tres procesos correspondientes a apache2. ¿Eso es normal?

Respuesta1

Sí. Apache tiene varios módulos de procesamiento diferentes para manejar solicitudes. Los más comunes son workery prefork. Ambos utilizan múltiples procesos. Preforkutiliza un proceso por conexión de cliente y siempre se asegura de que haya algunos procesos inactivos disponibles para manejar nuevas conexiones sin demora. WorkerTodavía usa varios procesos pero también usa subprocesos en estos procesos. Esto utiliza menos recursos en comparación con, preforkpero aún necesita varios procesos normalmente.

Un proceso que ve es probablemente el proceso "maestro" que abre los puertos TCP, espera conexiones y pasa las conexiones entrantes a un proceso de Apache diferente para realizar el procesamiento real. Los otros procesos son procesos de trabajo, ya sea desde preforko workermódulo.

información relacionada