답변:
예, 유휴 시간 초과 값을 0으로 설정하면 유휴 시간 초과가 비활성화됩니다.
이상하게도 MS 문서에는 문서화되어 있지 않지만 이에 대한 나의 증거는 다음과 같습니다.
IIS 설정 스키마
IIS 설정 스키마를 살펴보면 다음과 같습니다.
C:\Windows\System32\inetsrv\config\schema\IIS_schema.xml
idleTimeout
아래에 대한 스키마 정의
<sectionSchema name="system.applicationHost/applicationPools">
그것은 다음과 같습니다
<attribute name="idleTimeout"
type="timeSpan"
defaultValue="00:20:00"
validationType="timeSpanRange"
validationParameter="0,2592000,60"/>
당신이 보면 validationParameter
속성 우리가 0 2,592,000 초 사이의 범위를 표시합니다 ( ,60
지정이 설정의 세분화가,이 경우 값이 60 일분]에 의해 divisable해야합니다).
시작 허용 값이 0
표시되면 일반적으로 설정을 비활성화 할 수 있음을 나타냅니다.
브래드 킹슬리 (Brad Kingsley)는 OrcsWeb의 창립자이자 CEO로서 Microsoft 호스팅 및 골드 파트너로 잘 알려져 있고 존경받는 신뢰할 수 있습니다.
그런 다음 "정상 작동"한다는 사실에 대한 경험적 증거도 있습니다.
좋은 대답입니다! 고마워 Kev!
작은 업데이트 : 게시 한 URL이 이동했으며 현재 URL : http://bradkingsley.com/iis7-application-pool-idle-time-out-settings/
이것이 이것이 기본값이 아닌 이유가 있는지, 그리고 응용 프로그램 풀을 너무 오래 열어두면 성능에 영향을 줄 수 있는지 궁금합니다. 음, 유휴 상태 일 때 유지하면 트래픽이 있고 유휴 시간이 없을 때 재활용하지 않는 것보다 더 많은 문제가 발생하지 않습니다. 메모리 누수 또는 기타 리소스 누수가 걱정되는 경우 마지막 리사이클 / 메모리 소비 이후의 시간 / 요청 수를 기반으로 리사이클을 강제 실행하는 설정이 있습니다. 이에 대한 설명서는 다음과 같습니다.
http://technet.microsoft.com/en-us/library/cc753179(v=ws.10).aspx
유휴 상태 (idleTimeout = 0)에서 서버를 재활용하지 않도록 설정하고 24 시간마다 재활용합니다. 재활용> 일반 시간 간격 = 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"
}