/ / editing web.config - una causa de tiempo de inactividad? - asp.net, iis, web-config, tiempo de inactividad

Edición de web.config: ¿una causa de tiempo de inactividad? - asp.net, iis, web-config, tiempo de inactividad

En un sitio con el que estoy trabajando, tenemos dos clasesde cambios que pueden solicitar. Por un lado, tienen cosas que tendré que reconstruir y volver a desplegar. Cuentan estos cambios como "tiempo de inactividad", porque mostramos una pequeña pantalla de bienvenida y probamos el sitio minuciosamente cuando volvemos.

Por otro lado, nos piden que hagamos una serie decambios de texto, activación y desactivación de características, etc., que hemos aislado en la configuración web. Ofrecemos hacer esto dentro o fuera de las ventanas de implementación: solo editamos el archivo, verificamos que el cambio sea correcto y vuelve al trabajo.

Pero uno de los chicos inteligentes del lado del clienteSeñalé que la edición de web.config recicla el grupo de aplicaciones, y el tiempo de inactividad allí mismo. Nunca lo había notado, pero supongo que es correcto, mientras el grupo de aplicaciones no está disponible, la aplicación está "inactiva".

¿Pero por cuánto tiempo? No le pido que clasifique el nivel de comodidad del cliente con los intervalos de tiempo de inactividad, pero ¿es esta una perspectiva común? ¿O simplemente no deberíamos preocuparnos de que la edición web.config vaya acompañada de un segundo o dos de tiempo de inactividad de la aplicación?

Respuestas

3 para la respuesta № 1

IIS recicla el grupo de aplicaciones por sí mismo normalmente, y si esos reciclados no le causan preocupación, esta vez tampoco debería hacerlo.

El usuario no debería recibir ningún tipo de error de "servicio no disponible", afaik.


5 para la respuesta № 2

Todo lo dicho hasta ahora es correcto.

Sin embargo, hay una manera de evitar este tiempo de inactividad, siempre y cuando los valores que está utilizando no estén en la memoria caché.

Puede transferir parte de su archivo .config a otro archivo, que no recuperará el grupo de aplicaciones.

Se vería algo así en el archivo web.config:

<appSettings file="moresettings.config"></appSettings>

Entonces su archivo externo se vería así:

<?xml version="1.0" encoding="utf-8" ?>
<appSettings>
<add key="SOMEKEY" value="MYVALUE"/>
</appSettings>

3 para la respuesta № 3

Si le preocupa el tiempo de inactividad, y esto sucede mucho, consideraría cambiar estas configuraciones a la base de datos.

Dicho esto, el tiempo de inactividad en su caso será mínimo. El grupo de aplicaciones se recicla cuando guarda el archivo web.config y estamos hablando de milisegundos.


2 para la respuesta № 4

Como se dijo, IIS de hecho está reciclando el grupo de aplicaciones. Sin embargo, esto no es tan malo como hacer un iisreset completo: los usuarios no deberían tener el error "El servicio no está disponible." Ya que el servidor web aún está en línea y el servidor responde, solo tiene que esperar a que se reinicie, lo que significa que El tiempo de respuesta para los usuarios que acceden en este momento es muy alto. Esto puede ser un problema, por supuesto, si tiene un sitio web público y está rechazando a los visitantes.

Los otros efectos secundarios del reciclaje de AppPool son los mismos que en un iisreset: vacía un caché de sesión InProc si no me equivoco, y ejecuta el evento Application_Start.

Entonces, aunque es relativamente inofensivo, igual lo trataría como tiempo de inactividad.