1. Introducción
A continuación se describe el monitor de procesos php-fpm idle que proporciona Core-Admin y que permite:
- Retirar/reciclar procesos php-fpm en estado idle tras un tiempo sin hacer trabajo útil (usualmente 60 segundos).
- Ayudar a contener el uso de memoria consumida por procesos php-fpm en el contexto de máquinas con webs pesadas o webs con mucha visita debido a bots y similares.
- Ayudar a reducir el número de eventos OOM killer debido a que se obtiene una mayor media de memoria disponible (al reciclar antes debido a actividad observada).
2. Funcionamiento
-
Arranque: con un core-admin actualizado, se puede activar el monitor ejecutando:
# ARRANQUE:
>> crad-webhosting-mgr.pyc --start-recycle-php-fpm-idle-processes
INFO: /usr/sbin/crad-webhosting-mgr.pyc: start_recycle_php_fpm_idle_processes, started monitor (pid file /var/run/crad-webhosting-mgr-recycle-php-fpm-idle-processes.pid):1912136`Esto lanzará el proceso de monitorización, desplegando un proceso permanente auto-supervisado y que queda disponible incluso tras reinicios.
-
Parada: Para detener el monitor y por tanto la protección proporcionada, simplemente ejecutar:
# PARADA:
>> crad-webhosting-mgr.pyc --stop-recycle-php-fpm-idle-processes
3. Actualización y mantenimiento
-
Desactivado permanente: Para máquinas donde se desee que nunca se active este proceso, se puede ejecutar lo siguiente para marcar la instalación:
# DESACTIVADO PERMANENTE:
>> crad-webhosting-mgr.pyc --disable-recycle-php-fpm-idle-processesEsto no solo desactivará el servicio, también detendrá el monitor arrancaso si lo hubiese.
-
Recarga tras actualización: durante la actualización de core-admin, si hubiese un monitor arrancado, este será recargado utilizando:
# RECARGA TRAS ACTUALIZACIÓN:
>> crad-webhosting-mgr.pyc --reload-recycle-php-fpm-idle-processesNOTA: este proceso es automático. No hace falta ejecutarlo manualmente tras actualizar.
-
Revisión y reactivación en caso de reinicio o fallo: una vez activado el monitor, el sistema instala un cron para auto-supervisar el servicio para asegurar que ejecuta e implementa las tareas de reciclado. El cron está localizado en:
>> cat /etc/cron.d/crad-webhosting-mgr-recycle-php-fpm-idle-processes-cron
# Core-Admin : Cron to ensure RecyclePhpFpmIdleProcesses work
# Enabled on: Mon Apr 14 17:11:52 2025
# Disable this cron with: /usr/sbin/crad-webhosting-mgr.pyc --stop-recycle-php-fpm-idle-processes
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
*/5 * * * * root /usr/sbin/crad-webhosting-mgr.pyc --start-recycle-php-fpm-idle-processes > /dev/null 2>&1