首页 > 解决方案 > 应用程序池工作进程空闲超时操作:暂停与终止

问题描述

我在 Web 服务器中的 IIS 8.5 上部署了一个 ASP.NET MVC 应用程序,我想知道设置“空闲超时操作”的这两个功能之间的区别。

如果进程被挂起,进程使用的内存和资源是否被移除和释放?我认为删除和释放用于避免内存泄漏的内存是很好的,所以我通常使用终止功能。

标签: asp.net-mvciisapplication-poolworker-process

解决方案


我认为你应该根据你的应用环境来Suspend选择。Terminate

通常,要为单个应用程序池配置 Idle Worker Process Page-Out,我们选择Terminate,要将 Idle Worker Process Page-Out 配置为应用程序池的默认设置,我们选择Suspend

IIS 为管理员提供了一个选项,可以让在指定时间段内处于空闲状态的工作进程超时。对于不经常访问的站点,这是一个不错的选择,因为它可以在站点空闲时释放系统资源。缺点是下次访问站点时,用户需要等待worker进程重新启动。

Idle Time-out action中,它提供了暂停空闲工作进程而不是终止它的选项。暂停的工作进程保持活动状态,但被调出到磁盘,从而减少了它消耗的系统资源。当用户再次访问该站点时,工作进程会从挂起中唤醒并快速可用。当一个空闲的worker进程被终止时,worker进程被关闭,后续访问站点时启动周期会更长。


推荐阅读