2009-10-20 68 views

回答

169

是的,将空闲超时值设置为零将禁用空闲超时。

奇怪的是这在MS文档没有记载,但我这方面的证据来自出现了:

  • IIS设置架构

    如果你在看看IIS设置架构:

    C:\Windows\System32\inetsrv\config\schema\IIS_schema.xml

    idleTimeout

    下的模式定义10

    <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 [一分钟]分割)。

    如果您看到起始允许值0那么通常表示可以禁用该设置。

  • IIS7 Application Pool Idle Time-out Settings

    布拉德·金斯利是OrcsWeb谁是相当著名的,尊重和信任的微软托管服务提供商和黄金搭档的创始人和CEO。

  • 然后还有一个事实的经验证据表明它“正常工作”。

+1

@纯 - 请参阅我的更新答案。 – Kev

+3

向他人展示头像 - 在阅读完此文后,我将IIS 7上的空闲超时设置为0,并立即开始超时 - 每次页面加载都需要15秒左右。我现在把它升高到600,一切又快又快。 – nailitdown

+1

@nailitdown:你可能想仔细检查一下。我只是将我的IIS6应用程序池超时设置为0,并且它工作正常。 IIS7/IIS6之间有一个不同的机会,这很好理解。 –

8

很好的答案!感谢Kev!

一个小更新:您发布的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

+13

建议您将回收站设置为固定时间(例如0100)而不是24小时,因为这将导致自上次服务器重新启动/ iis重置后的24小时内。 – Neal

0
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" 
} 
+1

对这个粘贴代码的解释是有用的。 –

相关问题