Estoy trabajando en una aplicación ASP.net escrita en C# con la base de datos Sql Server 2000. Tenemos varios informes PDF que los clientes usan para sus necesidades comerciales. El problema es que estos informes tardan un tiempo en generar (> 3 minutos). Lo que generalmente termina sucediendo es cuando el usuario solicita el informe, el tiempo de espera de la solicitud mata la solicitud antes de que el servidor web tenga tiempo de terminar de generar el informe, por lo que el usuario nunca tiene la oportunidad de descargar el archivo. Luego, el usuario actualizará la página y volverá a intentarlo, lo que inicia todo el proceso de generación de informes y aún termina agotando el tiempo. (No, no estamos almacenando informes en caché ahora, eso es algo por lo que estoy presionando ...).Manejo de informes de ejecución larga
¿Cómo maneja estos escenarios? Tengo una idea en mi mente que implica hacer una solicitud asincrónica para iniciar la generación del informe y luego tener algún javascript para verificar periódicamente el estado. Una vez que el estado indique que el informe ha finalizado, realice una solicitud por separado para el archivo real.
¿Hay una manera más simple que no estoy viendo?
¿Puede explicar cómo el cliente puede sondear el servidor usando http HEAD? Me gusta la idea de la votación, sin embargo, estaba planeando usar JavaScript para la votación. ¿Hay un método más fácil? –
Puede enviar solicitudes de encabezado desde javascript, http://www.jibbering.com/2002/4/httprequest.html Probablemente haya algo acumulado en jquery/otras bibliotecas de big js para ayudar. – user7375