Configuración óptima de Apache2 para este escenario

Configuración óptima de Apache2 para este escenario

Me interesaría escuchar opiniones sobre la mejor configuración para un servidor web Apache en este escenario.

Tengo varios scripts (PHP) que se ejecutan a intervalos regulares, la mayoría al mismo tiempo, o en los mismos intervalos de tiempo a través de un trabajo cron.

A medida que pongo más y más de estos scripts, llamados páginas web y escritos en PHP, me preocupa un poco que pueda empezar a "perder" algunos de ellos en el camino, ya que todos se activan juntos.

Como "nadie" realmente las ve, ni espera a que se carguen estas páginas (un retraso de segundos no es un problema), me preguntaba qué configuraciones en apache2.conf mirar para asegurarme de que todas estas llamadas a páginas se traten realmente. (incluso con un retraso de unos segundos) en lugar de que Apache los deseche si no puede manejarlos en un período de tiempo determinado (a diferencia de las páginas html/php estándar que ve una persona que navega por el servidor web, estas son sólo páginas que ejecutan scripts que nadie está realmente esperando).

Mi solución ideal es que ellas (las páginas que se llaman a través de cron) simplemente se apilen y procesen una por una hasta que se llame al siguiente lote o en un período más tranquilo en lugar de que Apache las elimine porque no se han ejecutado en un período de tiempo particular.

Por supuesto, entiendo que si hacen cola durante más tiempo del que debe ejecutarse el siguiente lote, entonces tengo un problema.

En la misma nota, ¿cómo puedo ver qué Apache tiene en cola o qué páginas está procesando?

Gracias de antemano.

Respuesta1

Realmente no veo la necesidad de usar Apache en este contexto, si tienes acceso a cron. No necesitas servir páginas, aparentemente solo necesitas ejecutar código.

¿Por qué no intentar simplemente algo como esto?

#!/usr/bin/env php
<?php

[Your code here.
 Perhaps even send e-mail updates 
 including with the status of your script,
 or update a lightweight database each time
 the script has run.]

Simplemente guardar este script como /path/to/script.php y llamarlo php /path/to/script.php(o simplemente ./path/to/script.phpsi agrega derechos de ejecución al archivo, usando chmod +x) en su crontab debería hacer el trabajo y ahorrarle muchos gastos generales de Apache.

información relacionada