为什么 IIS 会随机重新启动我的 Web 应用程序?

为什么 IIS 会随机重新启动我的 Web 应用程序?

我的服务器上的一个网站遇到了问题,偶尔会丢失会话状态。

我将问题缩小到 IIS7,因此我向 Application_Start 事件(它是一个 ASP.Net MVC 应用程序)添加了一个方法,每次启动应用程序时都会向我发送电子邮件,并在大约一周前重新部署了该站点。从那时起,我每 26 小时左右就会收到一次“启动”电子邮件。

所以,我想知道为什么 IIS 要重新启动该应用程序。

答案1

这很可能由网站所在的应用程序池的回收功能控制。您可以将其调整为在设定的时间或更长的时间间隔内进行回收。

答案2

您看过这个帖子了吗?

http://forums.iis.net/t/1157734.aspx


虽然它似乎不能立即回答您的问题,但这似乎不是一个罕见的问题。

它还包含其他可能有用的链接。

答案3

Will 和 Shufler 都说对了。应用程序池正在自我回收。

我通过从应用程序池列表中选择池并单击“回收...”按钮发现了这一点。该屏幕为您提供了 3 个回收间隔选项:设置时间间隔(分钟)、固定请求数或特定时间。而且看起来您可以同时使用这 3 个选项。您还有 2 个内存阈值选项,一旦达到就会导致回收:虚拟内存使用量(以 KB 为单位)或私有内存使用量(以 KB 为单位)。

事实证明,该池设置为每 1560 分钟循环一次。

答案4

每 26 小时?这听起来像是应用程序池为了释放内存而自动重启。

相关内容