Tengo el siguiente problema con mi servidor VPS.Ejecutando scripts PHP concurrentes
Tengo un script PHP de larga ejecución que envía grandes archivos al navegador. Se hace algo como esto:
<?php
header("Content-type: application/octet-stream");
readfile("really-big-file.zip");
exit();
?>
Esto lee básicamente el archivo del sistema de archivos del servidor y lo envía al navegador. No puedo usar enlaces directos (y dejar que Apache sirva el archivo) porque hay una lógica comercial en la aplicación que debe aplicarse.
El problema es que, mientras se está ejecutando la descarga, el sitio no responde a otras solicitudes.
No es que este sea el problema, pero al servir archivos de gran tamaño, siempre debe llamar a 'set_time_limit (0);'. No debería hacer ninguna diferencia para usted en este momento, pero le anticipará problemas potenciales que puede experimentar si mueve esto en algún momento a una * * plataforma Windows. –
DaveRandom
¿Cómo has descubierto el problema? ¿Está probando esto haciendo múltiples solicitudes desde la misma máquina? ¿Y estás usando sesiones? – DaveRandom
@DaveRandom Me di cuenta del problema cuando traté de descargar varios archivos (se pusieron en cola para su descarga). Estoy usando sesiones, solo intenté y parece que esta restricción no afecta otras sesiones. Gracias por sus comentarios. Investigaré más a fondo ahora. –