asp.net - sesion - ¿Cómo deshabilitar el tiempo de espera inactivo del grupo de aplicaciones en IIS7?
idle timeout iis (3)
¡Gran respuesta! gracias Kev!
Una pequeña actualización: la URL que ha publicado se ha movido y ahora es: http://bradkingsley.com/iis7-application-pool-idle-time-out-settings/
Me preguntaba si hay una razón por la cual esto no es el predeterminado, y si puede haber un impacto en el rendimiento para mantener el grupo de aplicaciones abierto por mucho tiempo. Bueno, mantenerlo cuando está inactivo no le causará más problemas que no reciclarlo cuando hay tráfico y no hay tiempo de inactividad. Si le preocupan las fugas de memoria u otras fugas de recursos, existe una configuración para forzar el reciclaje en función del tiempo / número de solicitudes desde el último consumo de reciclaje / memoria. Aquí está la documentación para ello:
http://technet.microsoft.com/en-us/library/cc753179(v=ws.10).aspx
Voy a configurar mi servidor para que no se recicle en inactivo (inactividadTiempo = 0), y lo reciclo cada 24 horas: Reciclaje> Intervalo de tiempo regular = 1440
¿Se desactivará si configuro el tiempo de espera inactivo en 0?
Sí, establecer el valor de tiempo de espera inactivo en cero deshabilitará los tiempos de espera inactivos.
Curiosamente, esto no está documentado en los documentos MS, pero mi evidencia proviene de:
Esquema de configuración de IIS
Si echas un vistazo al esquema de configuración de IIS en:
C:/Windows/System32/inetsrv/config/schema/IIS_schema.xml
La definición del esquema para
idleTimeout
en<sectionSchema name="system.applicationHost/applicationPools">
parece que:
<attribute name="idleTimeout" type="timeSpan" defaultValue="00:20:00" validationType="timeSpanRange" validationParameter="0,2592000,60"/>
Si nos fijamos en el atributo
validationParameter
, vemos un rango de 0 a 2592000 segundos (the,60
especifica la granularidad de la configuración, en este caso el valor debe ser divisible por 60 [un minuto]).Si ve un valor permitido inicial de
0
entonces eso generalmente indica que la configuración puede ser deshabilitada.Configuración de tiempo de inactividad de inactividad del grupo de aplicaciones IIS7
Brad Kingsley es el fundador y CEO de OrcsWeb, que es un proveedor de servicios de Internet y Gold Partner bastante conocido, respetado y confiable.
Luego está también la evidencia empírica del hecho de que "simplemente funciona".
Import-Module WebAdministration
$pools = Get-ChildItem iis:/apppools
foreach ($pool in $pools)
{
$poolname = $pool.Name
Set-ItemProperty IIS:/AppPools/$poolname -name processModel -value @{idletimeout="20"}
Set-ItemProperty IIS:/AppPools/$poolname -name processModel -value @{idletimeoutaction="Suspend"}
set-ItemProperty IIS:/AppPools/$poolname -Name Recycling.periodicRestart -Value @{time="0"}
set-ItemProperty IIS:/AppPools/$poolname -Name Recycling.periodicRestart.schedule -Value @{value="02:00:00"}
Set-ItemProperty IIS:/AppPools/$poolname -name Recycling -value @{logEventOnRecycle="Time, Requests, Schedule, Memory, IsapiUnhealthy, OnDemand, ConfigChange, PrivateMemory"}
Write-Host "Updated $poolname settings"
}