![Antiguo](http://static.forosdelweb.com/fdwtheme/images/statusicon/post_old.gif)
21/08/2008, 22:59
|
| | Fecha de Ingreso: agosto-2008
Mensajes: 45
Antigüedad: 16 años, 5 meses Puntos: 0 | |
Respuesta: Ejecutar scripts concurrentes? Hola, yo tube un problema parecido al tuyo, y tiene mucha lógica lo que querés hacer, pero primero aclaremos algunas cosas.
Si un script PHP dura "demasiado" tiempo (cada servidor tiene su concepto de "demasiado") este será abortado, y te puedo asegurar que 45' es demasiado (para mi 15' también es demasiado).
En primera instancia no existe forma, en PHP, de ejecutar dos, o más, rutinas en paralelos, hacer lo que los programadores llamamos hilos (threads); pero existe una clase que "simula" este comportamiento.
Lo que hace es llamar varias veces al programa php (php.exe en Windows, o el /bin/php según corresponda) y le pasa como parámetro la clase/función que querés ejecutar. Entonces vos vas a tener varias instancias del programa PHP corriendo en el servidor, y en cada instancia vas a tener una sola función ejecutándose.
Si te interesa buscala en google que aparece enseguida, buscá algo como multi threads en PHP. Yo no la he probado, miré el código y no me inspiró mucha confianza.
Yo lo resolví haciendo un CGI en C++ (que tiene un hermoso manejo de hilos), lo ejecuto cuando se necesite y listo (en mi caso cada 15''); este es uno de los casos en los que no cambio un CGI por PHP.
Suerte, matías.- |