Pregunta

Tenemos una aplicación web ASP.net con algunas páginas que ocasionalmente se agotan a medida que se cargan las páginas (en general, estas son todas las páginas de tipo administrador que realizan cargas / descargas de errores con el procesamiento).

Una de las soluciones ha sido aumentar tanto el Session.Timeout como el Server.ScriptTimeout hasta números muy grandes, lo que funciona bien. Sin embargo, hay bastante discusión aquí sobre cuándo se aplica cada configuración. Para decirlo suavemente, las páginas de MSDN están abiertas a interpretación.

¿Puede alguien darme la versión resumida del lector de cuál es la diferencia, o indicarme la página de MSDN que no pudimos encontrar?

Gracias, todos.

(.net 2.0 en II6, si importa)

Como una pregunta complementaria adicional, ¿cambiar esas configuraciones en, digamos, la función on_load () de una página dada las cambia para toda la aplicación, o solo esa página?

Edit: whoops! Me refiero a "sesión. Tiempo de espera" no " Server.Timeout. "

¿Fue útil?

Solución

ScriptTimeout es el número de segundos que el tiempo de ejecución de ASP.NET pasará esperando en los resultados de una página ASPX.

Session.Timeout es el número de minutos que ASP.NET pasará esperando en YOU .

Otros consejos

El tiempo de espera de la secuencia de comandos es lo que controla cuánto tiempo se puede ejecutar el código para manejar una solicitud, así que eso es lo que cambia para permitir el código de larga ejecución. La configuración en el Administrador de IIS se usa para cada solicitud, y la propiedad Server.ScriptTimeout se usa para la solicitud actual, por lo que si es posible, debe establecerla en el código para que todas las páginas normales usen el tiempo de espera del script normal.

El tiempo de espera de la sesión es la hora en que el objeto de sesión en el servidor sobrevive después de que el usuario realizó la última solicitud. La configuración de tiempo de espera de sesión en el Administrador de IIS es la configuración predeterminada para cualquier nueva sesión creada, y la propiedad Session.Timeout a la que se accede desde el código es el tiempo de espera para esa sesión específica. El tiempo de espera predeterminado de la sesión es de 20 minutos, y puede subirlo un poco sin ningún gran riesgo, pero aún así debe mantenerlo dentro de un valor razonable para que no tenga objetos de sesión que se aferren durante días en la memoria.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top