SoloCodigo

Programación Web y Scripting => PHP => Mensaje iniciado por: ngb en Viernes 5 de Diciembre de 2008, 14:03

Título: Desencadenar eventos
Publicado por: ngb en Viernes 5 de Diciembre de 2008, 14:03
Buenas queria pediros consejo de como realizar lo siguiente:

Estoy realizando una aplicación web con php+mysql, lo tipico. Necesito crear o incorporar un sistema que me desencadene ciertas rutinas de actualización en fechas concretas. En definitiva se trata de que ciertas funciones se ejecuten automaticamente en fechas concretas. ¿Como es la mejor forma de realizar esto en vuestra opinion? Cuantas mas opiniones mejor ;P

Gracias por adelantado fenomenos
Título: Re: Desencadenar eventos
Publicado por: shadow_rev en Viernes 5 de Diciembre de 2008, 14:58
1. Puedes crear el script en PHP, y con el crontab (en linux) o el programador de tareas (en windows) poner a ejecutar el script con el cliente de PHP ("php script_periodico.php" desde la línea de comandos)
2. Crear el script en forma de daemon (un bucle while(true)), donde esté preguntando la fecha, si esta coincide, pones a funcionar las rutinas, sino le haces una pausa (el tiempo que quieras); y lo pones a funcionar desde la linea de comandos.

Personalmente, optaría por la primera opción; es mucho más eficiente llamar a un script cuando se necesite, que tener 2 procesos (el cliente de php y el script) funcionando ininterrumpidamente cuando no se construyeron para eso (tal vez el script si, pero el php no).

:suerte:
Título: Re: Desencadenar eventos
Publicado por: ngb en Viernes 5 de Diciembre de 2008, 19:43
Gracias shadow_rev. La primera la probare a ver que tal va. La segunda no me gusta por temas de eficiencia que puede terminar siendo importante en la aplicacion que desarrollo.

Si alguien conoce alguna otra manera puede tambien aportarla. Saludos y gracias