アイドルタイムアウトを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〜2592000秒の範囲があります(,60
は設定の粒度を指定します。この場合、値は60 [1分]で割り切れる必要があります)。
0
の開始許容値が表示される場合、通常は設定を無効にできることを示しています。
Brad KingsleyはOrcsWebの創設者兼CEOであり、かなりよく知られ、尊敬され、信頼されているMicrosoftのホスティング会社であり、ゴールドパートナーです。
それから、それが「うまくいく」という事実の経験的証拠もあります。
素晴らしい答えです!ありがとうケブ!
小さな更新:投稿した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"
}