Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/02/2013, 07:23
ugeltroglodita
 
Fecha de Ingreso: diciembre-2012
Mensajes: 17
Antigüedad: 11 años, 4 meses
Puntos: 2
Carga progresiva

Muy buenas a todos,

Tengo un script en php que se conecta a una base de datos para sacar información y construir una tabla. El script tarda bastante, y el problema que tenemos es que el servidor acaba dando un error 500, supongo que por tema de timeout.

Esto me ha pasado al cambiar una aplicación de un cliente a un nuevo servidor. El cliente dice que antes la tabla iba saliendo progresivamente, mientras que ahora, cuando le funciona (forzando una reducción del script) va todo de golpe. Mirando el código veo que al acabar cada consulta escribe una nueva fila en la tabla y llama a flush(), pero no tiene efecto.

Investigando un poco he tocado cuatro cosas del php.ini, como por ejemplo:
  • output_buffering = Off
  • zlib.output_compression = Off

Pero esto no me ha servido para que construyera la página poco a poco.

Por otro lado, aumentando los resource limits he conseguido hacerlo funcionar en local, pero con los mismos valores en producción no tira:
  • max_execution_time = 800
  • max_input_time = 100
  • memory_limit = 16M

Estamos hablando de una aplicación con php 5.0.4 y que corre bajo IIS7.

No sé qué más puedo tocar para ampliar el timeout o para que se vaya cargando de manera progresiva.

Y tengo la duda de si al cargar de manera progresiva, el timeout total de la petición sigue siendo el mismo o se va ampliando, es decir, solo con que cargue progresivamente las filas de la tabla ya funcionará o llegará a x filas y ya no me responderá nada más??

A ver qué me podéis decir, gracias