Sera-t-il désactivé si je règle le délai d'inactivité à 0?
Oui, la définition de la valeur du délai d'inactivité à zéro désactivera les délais d'inactivité.
Curieusement, cela n’est pas documenté dans la documentation MS, mais j’en témoigne:
Schéma des paramètres IIS
Si vous examinez le schéma de 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 à:
<attribute name="idleTimeout"
type="timeSpan"
defaultValue="00:20:00"
validationType="timeSpanRange"
validationParameter="0,2592000,60"/>
Si vous regardez l’attribut validationParameter
, nous voyons une plage de 0 à 2592000 secondes (le ,60
spécifie la granularité du paramètre, dans ce cas, la valeur doit être divisible par 60 [une minute]).
Si vous voyez une valeur de départ admissible de 0
, cela indique généralement que le réglage peut être désactivé.
paramètres de délai d'inactivité du pool d'applications IIS7
Brad Kingsley est le fondateur et le PDG d’OrcsWeb, un hébergeur et partenaire Gold de Microsoft assez connu, respecté et digne de confiance.
Ensuite, il y a aussi la preuve empirique du fait que cela "fonctionne".
Très bonne réponse! merci Kev!
Une petite mise à jour: l'URL que vous avez publiée a été déplacée et elle est maintenant: http://bradkingsley.com/iis7-application-pool-idle-time-out-settings/
Je me demandais s'il y avait une raison pour que ce ne soit pas la valeur par défaut et si cela pourrait avoir un impact sur les performances si vous maintenez le pool d'applications ouvert trop longtemps. Bien le garder au ralenti quand il est inactif ne vous causera pas plus de problèmes que de ne pas le recycler quand il y a de la circulation et pas de temps d'inactivité. Si vous craignez des fuites de mémoire ou d’autres ressources, il existe un paramètre permettant de forcer le recyclage en fonction de la durée/du nombre de demandes depuis la dernière consommation de recyclage/mémoire. Voici la documentation pour cela:
http://technet.Microsoft.com/en-us/library/cc753179 (v = ws.10) .aspx
Je vais configurer mon serveur pour ne pas recycler au ralenti (idleTimeout = 0) et le recycler toutes les 24 heures: Recyclage> Intervalle de temps réglementaire = 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"
}