Foros del Web » Programando para Internet » PHP »

como optimizar popen() o proc_open()

Estas en el tema de como optimizar popen() o proc_open() en el foro de PHP en Foros del Web. Hola a todos, tengo una script de PHP en el que mando a ejecutar una aplicacion Java. Esto lo hago suscesivamente para digamos N archivos, ...
  #1 (permalink)  
Antiguo 26/03/2010, 15:19
Avatar de blesther  
Fecha de Ingreso: abril-2008
Mensajes: 141
Antigüedad: 16 años
Puntos: 0
como optimizar popen() o proc_open()

Hola a todos, tengo una script de PHP en el que mando a ejecutar una aplicacion Java. Esto lo hago suscesivamente para digamos N archivos, popen me permite mandar el proceso a segundo plano y el proceso se hace un tanto rapido. El problema viene a la hora de la sobrecarga del sistema. El procesador me llega al 100% durante todo ese tiempo e incluso llega a bloquearse el sistema completamente. Quisiera saber si existe la posibilidad de optimizar esta funcion para mantener la estabilidad del sistema. El codigo es el siguiente:


Código PHP:
Ver original
  1. for($j = 0;$j<100;$j++){
  2.    $v = popen("./Aplicacion/run.pl " .$files[$j]. "& > /dev/null", 'w');
  3.    pclose($v);
  4. }
  #2 (permalink)  
Antiguo 26/03/2010, 15:39
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: como optimizar popen() o proc_open()

popen solamente lo que hace es levantar un proceso nadamás, el que consuma el 100% del CPU y la memoria es el script que estas usando, por lo que desde PHP no puedes optimizar nada, debes de checar eso en tu archivo run.pl.

Saludos.
  #3 (permalink)  
Antiguo 26/03/2010, 16:03
Avatar de blesther  
Fecha de Ingreso: abril-2008
Mensajes: 141
Antigüedad: 16 años
Puntos: 0
Respuesta: como optimizar popen() o proc_open()

Este script me procesa 1 archivo en menos de un segundo, y el procesador no sube del 10%. No se si la linea pclose($v); mantendra la referencia de cerrar el proceso.
  #4 (permalink)  
Antiguo 26/03/2010, 16:12
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: como optimizar popen() o proc_open()

No, pclose simplemente cierra el pipe, pero en tu caso no tiene mucho caso, ya que estas enviando el proceso a que se ejecute en background.

Etiquetas: Ninguno
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 23:15.