Vamos a empezar con la definición
maxrequests: How many requests does a child server before being killed
and a new one forked
maxspare : Maximum number of spare processes to keep running
minspare : Minimum number of spare processes to prefork
maxchildren: Hard limit number of processes in prefork mode
Esto significa que usted tendrá en la mayoría de maxchildren procesos que se ejecutan en un momento dado en su servidor web, cada candidato a maxrequests peticiones. En el inicio del servidor obtendrá minspare procesos, que seguirán creciendo hasta maxspare (o maxchildren) si se reciben más solicitudes.
Así, minspare te permite decir cuántas peticiones concurrentes son sus expectativas en un mínimo (importante para evitar la creación de procesos si se comienza con uno, es bueno comenzar a, por ejemplo, 10), y maxspare permite usted dice a cuántas solicitudes simultáneas atenderá su servidor como máximo (sin comprometer el tiempo de respuesta esperado, etc.). Necesita una prueba de esfuerzo para validar. Y maxrequests está hablando de la vida útil de cada niño, en caso de que no puedan ejecutarse para siempre debido a cualquier tipo de restricción.
Buena explicación. ¿Puedes decir algo más sobre maxrequests? Esa es mi mayor preocupación. ¿Por qué querrías que un proceso infantil muriera después de un cierto número de solicitudes? Para protegerse de fugas de memoria eventuales? – ibz
No puedo hablar por todos, aunque con Django y fastcgi hemos visto muchos problemas de memoria con los procesos fastcgi de larga duración. Establecer un valor razonable para 'maxrequests' nos evita tener que eliminar manualmente los procesos grandes, ya que no están disponibles el tiempo suficiente para que la pérdida de memoria cause mucho daño. –
¿Cuál es la diferencia entre maxchildren y maxspare? Me parecen redundantes. –