python - refrescar - implementar ajax en django
La transmisiĆ³n de archivos grandes desde Heroku falla despuĆ©s de 30 segundos de tiempo de espera (1)
Tengo un trabajador web python que transmite un archivo grande a petición del cliente. Después de 30 segundos, Heroku finaliza la conexión. Estoy usando web.py
y obtengo una nueva salida. De acuerdo con los documentos de Heroku:
Cedar es compatible con las funciones de HTTP 1.1, como las respuestas de transmisión larga y de transmisión por secuencias. Una aplicación tiene una ventana inicial de 30 segundos para responder con un byte único al cliente. Sin embargo, cada byte transmitido a partir de ese momento (ya sea recibido del cliente o enviado por su aplicación) restablece una ventana continua de 55 segundos. Si no se envían datos durante la ventana de 55 segundos, la conexión finalizará.
Envío mucho más de 1 byte cada 55 segundos, pero la conexión aún está terminada.
Estos son los encabezados que estoy usando
web.header(''Content-type'' , ''application/zip'')
web.header(''Content-Disposition'', ''attachment; filename="images.zip"'')
Incluso intenté agregar:
web.header(''Transfer-Encoding'',''chunked'')
¿Estoy haciendo algo mal?
Parece que el problema fue el resultado de malas configuraciones de gunicorn
. Extender el tiempo de espera de Procfile
en Procfile
hizo el truco:
--timeout 300