Cuando tienes una aplicación web, los procesos cron son muy útiles para automatizar tareas de todo tipo: mantenimiento, background, … El problema que nos podemos encontrar es cuando el tiempo que tarda en ejecutarse un cron supera el tiempo de espera entre ejecuciones, con lo que nos encontramos con dos cron ejecutándose en el mismo momento, pudiendo repercutir negativamente en la propia tarea del cron.
Para evitar esta situación, el script al que hago referencia nos va a venir muy bien, porque añade bloqueos al cron para evitar que dos procesos se ejecuten. Una solución sencilla es crear un fichero, y si el fichero existe, pues no ejecutar el cron. El problema que tiene esto es que si el cron termina abruptamente, el fichero seguirá existiendo por no haberse borrado y el resto de procesos cron no se ejecutarán.
El autor en este script añade la posibilidad de saber si el cron sigue ejecutándose o se terminó incorrectamente, para lo cual en el fichero de bloqueo guarda el PID del proceso cron que lo crea y comprueba si el PID sigue existiendo. Este script sólo es útil en entornos linux.
How to use locks in PHP cron jobs to avoid cron overlaps
Vía / PHPDeveloper.org
interesante, aunque hay otros fw, quizás, mejores que ci. ejemplo: yii o zend.
salU
A mi personalmente no me gusta Zend, pero para gustos los colores 🙂
Hay muchos frameworks y algunos muy interesantes, como por ejemplo Kohana, basado en CI
Saludos
Yo trabajo con Ci y me parece un buen framework y hasta el momento no he tenido la necesidad de probar o utilizar otro framework.
El hack que mas me interesa es el de prevenir la colisión de nombres entre controladores y modelos.
Cierto, Psycho, lo más interesante para mà también es el hack de las colisiones.
Saludos
interesante, y por cierto no habia notado que sentido web cambio de luck cosa que le sentó de maravilla
Hola khafra.
Si, año nuevo imagen nueva, me alegro de que te haya gustado, total sólo he tardado año y pico en hacerlo jejeje y ya por desesperación lo dejé asÃ, lo de diseñar no es lo mÃo.
Saludos