Window Azure 中控制应用程序池闲置超时

我经常听说的一个问题是在Windows Azure中是否有可能改变IIS应用程序池的闲置超时时间。其实这的确是可能的,使用启动任务很就很容易做到这一点。

默认的闲置超时值是20分钟,这意味着如果你的应用程序池20分钟不用就会被关闭有些人想改变这种状况,因为他们的应用程序静止20分钟后就会变得有点慢了。

要改变超时值为0(意思是”永不超时“),可以加入下列的启动任务声明到ServiceDefinition.csdef:

<Startup>
  <Task commandLine="startup\disableTimeout.cmd" executionContext="elevated" />
</Startup>然后添加disableTimeout.cmd到一个 startup文件夹中,disableTimeout.cmd的代码如下(必须在一行,以下由于格式所限换行):

%windir%\system32\inetsrv\appcmd set config -section:applicationPools
    -applicationPoolDefaults.processModel.idleTimeout:00:00:00确保 disableTimeout.cmd的“Copy to Output Directory”被设置为“Copy always”

 

本文翻译自:https://blog.smarx.com/posts/controlling-application-pool-idle-timeouts-in-windows-azure