Foros del Web » Programando para Internet » PHP »

Threads o hilos en PHP

Estas en el tema de Threads o hilos en PHP en el foro de PHP en Foros del Web. Hola a todos, estoy teniendo un problemilla en la ejecución de una aplicación PHP, intentaré explicarles: La cuestión es que la aplicación en sí no ...
  #1 (permalink)  
Antiguo 31/05/2010, 06:04
 
Fecha de Ingreso: marzo-2009
Mensajes: 47
Antigüedad: 15 años, 1 mes
Puntos: 0
Threads o hilos en PHP [Solucionado]

Hola a todos, estoy teniendo un problemilla en la ejecución de una aplicación PHP, intentaré explicarles:

La cuestión es que la aplicación en sí no debe tardar mucho tiempo en responder al cliente (es decir, generar una salida, un output), ya que en su caso fallará, ya que el cliente de nuestra aplicación en especial, supondrá que el servidor no responde pasado un tiempo en que no reciba respuesta de él, cerrando la conexión.

Ahora bien, el problema que tengo es el siguiente, en la aplicación se realiza una petición a otro servidor mediante HTTPS, esta petición es la que está tardando mas de lo normal y no tengo manera de evitar esa latencia, ya que no depende de mi.

Lo que se me ocurrió a mi, por lo tanto, es poder envíar datos genéricos o de relleno para que el cliente sepa que la aplicación esta "viva" a la vez que aguardo la respuesta de la petición HTTPS, lo único que se me ocurrió para hacer esto es creando un hilo que envíe estos datos genéricos que corte cuando finalice la petición, pero no se bien como implementar esto en PHP.

¿Sabe alguien alguna solución, ya sea la de como implementar hilos en PHP u otra alternativa?

Muchas gracias
Un Saludo!

Última edición por eagleoneraptor; 01/06/2010 a las 08:12 Razón: Solucionado
  #2 (permalink)  
Antiguo 31/05/2010, 15:31
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Threads o hilos en PHP

Hola
revisa esto
saludos
  #3 (permalink)  
Antiguo 01/06/2010, 08:11
 
Fecha de Ingreso: marzo-2009
Mensajes: 47
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Threads o hilos en PHP

Hola, vi el artículo que me pasaste, ya había visto algo así en otro artículo, lamentablemente usa la función pcntl_fork, y eso es un problema ya que mi servidor no lo soporta :( .

De todas formas he encontrado otra solución ajena para resolver el problema... lo doy por solucionado.

Un Saludo!
  #4 (permalink)  
Antiguo 01/06/2010, 14:25
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
De acuerdo Respuesta: Threads o hilos en PHP

Hola
Bueno, pues sería bueno que compartieras la solución ajena
por si otras personas llegaran a tener las limitaciones de
servidor que tienes actualmente

saludos
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #5 (permalink)  
Antiguo 01/06/2010, 18:21
 
Fecha de Ingreso: marzo-2009
Mensajes: 47
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Threads o hilos en PHP

Cita:
Iniciado por mortiprogramador Ver Mensaje
Hola
Bueno, pues sería bueno que compartieras la solución ajena
por si otras personas llegaran a tener las limitaciones de
servidor que tienes actualmente

saludos
Bueno, es cierto, para algo es el foro, pero es que la vi un poco enroscada la solución, en realidad se nos ocurrieron varias (muchas que encontramos en Internet), para empezar, el cliente en cuestión servía como puente entre nuestro servidor y el usuario (navegador) y nos dimos cuenta que envíarle datos de relleno al puente mientras se hacía la petición HTTPS no servía de nada, porque cortaba la conexión si la petición completa tardaba de mas, en lugar de si no recibía datos.

La idea en si surgió de que en el procedimiento en que se realizaba la petición HTTPS no se iban a obtener datos relevantes que se deban envíar al puente. Por lo que ese procedimiento se llevó a cabo entre el usuario y nuestro servidor.

Por cierto la manera de mandar datos asíncronamente (que no sirvió en nuestro caso) durante otro procedimiento lento la logramos encapsulando todo ese procedimiento en un script que llamaríamos luego con curl_multi_exec y otras funciones curl*, envíamos los datos de relleno hasta que el cUrl terminaba.

Como ves, para captar la solución haría falta un poco mas de contexto, por eso no lo mencione...

Un Saludo!
  #6 (permalink)  
Antiguo 01/06/2010, 18:24
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
De acuerdo Respuesta: Threads o hilos en PHP

Hola
Es cierto, es bastante específico, pero bueno,
esta explicación que has dado tal vez de luz
a los que necesiten en algún momento una idea

saludos
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #7 (permalink)  
Antiguo 02/06/2010, 00:27
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Threads o hilos en PHP

Un dato, si es posible enviar peticiones a otro dominio usando AJAX. Solo que se limita a ciertos navegadores, para mas informacion http://www.anieto2k.com/2009/07/09/a...-5-y-safari-4/
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #8 (permalink)  
Antiguo 02/06/2010, 20:42
 
Fecha de Ingreso: marzo-2009
Mensajes: 47
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Threads o hilos en PHP

Es cierto, de todas formas la petición se realizo con un iframe, justamente por tema de compatibilidad.

Un Saludo!

Etiquetas: hilos, threads
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:28.