asp.net-mvc – 在应用程序池回收后,如何预热我的asp.net mvc webapp?

我在IIS 8.0中运行ASP.NET MVC webapp.在收到请求之前,我的应用程序需要预热.我们已经有一个流程来在部署新代码自动预热应用程序.但是,我们看到定期应用程序池回收事件导致应用程序未预热.

是否有检测应用程序池循环事件和执行脚本或某些代码的最佳实践?

解决方法

你可以做几件事:

1.应用程序初始化

您可以使用IIS 8.0内置的Application Initialization Module

你可以在你的web.config中有这样的东西

<applicationInitialization
     doAppInitAfterRestart="true" >
   <add initializationPage="/" />
</applicationInitialization>

每当您的应用自动启动时,这将向您的应用的根目录(initializationPage =“/”)发送请求.

您还可以将应用程序池的“启动模式”配置为“始终运行”,这意味着每次IIS重新启动时,都会确保立即启动应用程序池(如果右键单击应用程序池,则进行高级设置)

和您网站本身的预加载(右键单击该站点,然后单击管理站点,然后单击高级设置

2.禁用空闲超时

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

3.禁用定期回收

认情况下,关闭常规时间间隔(分钟)IIS会每29小时回收一次您的应用程序.

对于

相关文章

这篇文章主要讲解了“WPF如何实现带筛选功能的DataGrid”,文...
本篇内容介绍了“基于WPF如何实现3D画廊动画效果”的有关知识...
Some samples are below for ASP.Net web form controls:(fr...
问题描述: 对于未定义为 System.String 的列,唯一有效的值...
最近用到了CalendarExtender,结果不知道为什么发生了错位,...
ASP.NET 2.0 page lifecyle ASP.NET 2.0 event sequence cha...