Agi*_*Jon 29 asp.net-mvc iis-8
我在 IIS 8.0 中运行一个 ASP.NET MVC webapp。在接受请求之前,我的应用程序需要预热。我们已经有了在部署新代码时自动预热应用程序的过程。但是,我们看到周期性的 App Pool Recycle 事件导致应用程序无法预热。
是否有检测应用程序池回收事件并执行脚本或某些代码的最佳实践?
ahm*_*yed 60
您可以执行以下几项操作:
您可以使用IIS 8.0 自带的应用程序初始化模块
你可以有这样的东西在你的 web.config
<applicationInitialization
doAppInitAfterRestart="true" >
<add initializationPage="/" />
</applicationInitialization>
Run Code Online (Sandbox Code Playgroud)
initializationPage="/"每次您的应用程序自动启动时,这都会向您的应用程序的根目录 ( )发送一个请求。
您还可以为您的应用程序池配置启动模式,Always Running这意味着每次 IIS 重新启动时,它都会确保立即启动您的应用程序池(如果从右键单击您的应用程序池然后Advanced Settings

并Preload为您的网站本身(右键点击该网站上,然后Manage Site再Advanced Settings

此外,您可以通过将Idle Time-out应用程序池的 in 更改为 0(无限)来禁用 idleTimeout(默认情况下 IIS 将在活动 20 分钟后关闭应用程序)

也Regular Time Interval (minutes)默认关闭IIS 会每 29 小时回收一次您的应用程序。

为了
| 归档时间: |
|
| 查看次数: |
33895 次 |
| 最近记录: |