Sera-t-il désactivé si je règle le délai d'inactivité sur 0 ?
Réponses
Trop de publicités?Oui, la mise à zéro de la valeur du délai d'inactivité désactivera les délais d'inactivité.
Curieusement, cela n'est pas documenté dans la documentation de MS, mais j'en ai la preuve :
-
Schéma des paramètres IIS
Si vous regardez le schéma des paramètres IIS dans :
C:\Windows\System32\inetsrv\config\schema\IIS_schema.xml
La définition du schéma pour
idleTimeout
sous<sectionSchema name="system.applicationHost/applicationPools">
ça ressemble à ça :
<attribute name="idleTimeout" type="timeSpan" defaultValue="00:20:00" validationType="timeSpanRange" validationParameter="0,2592000,60"/>
Si vous regardez le
validationParameter
nous voyons une plage de 0 à 2592000 secondes (l'attribut,60
spécifie la granularité du réglage, dans ce cas la valeur doit être divisible par 60 [une minute]).Si vous voyez une valeur de départ admissible de
0
alors cela indique généralement que le paramètre peut être désactivé. -
Paramètres du délai d'inactivité du pool d'applications IIS7
Brad Kingsley est le fondateur et le PDG d'OrcsWeb, qui est un hébergeur Microsoft et un partenaire Gold assez connu, respecté et digne de confiance.
-
Et puis il y a aussi la preuve empirique du fait que ça "marche" tout simplement.
Excellente réponse ! Merci Kev !
Une petite mise à jour : l'URL que vous avez postée a été déplacée et c'est maintenant : http://bradkingsley.com/iis7-application-pool-idle-time-out-settings/
Je me demandais s'il y avait une raison pour laquelle ce n'était pas la valeur par défaut, et si le fait de garder le pool d'applications ouvert trop longtemps pouvait avoir un impact sur les performances. Eh bien, le maintenir ouvert lorsqu'il est inactif ne vous causera pas plus de problèmes que de ne pas le recycler lorsqu'il y a du trafic et pas de temps d'inactivité. Si vous êtes préoccupé par les fuites de mémoire ou d'autres ressources, il existe un paramètre permettant de forcer le recyclage en fonction du temps/nombre de demandes depuis le dernier recyclage/ consommation de mémoire. Voici la documentation à ce sujet :
http://technet.microsoft.com/en-us/library/cc753179(v=ws.10).aspx
Je vais configurer mon serveur pour qu'il ne recycle pas en cas d'inactivité (idleTimeout=0) et qu'il recycle toutes les 24 heures : Recyclage > Intervalle de temps régulier = 1440
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"
}