IIS回收情况说明

版权声明:本文为starfd原创文章,未经博主允许不得转载。 IIS回收情况说明_sky 胡萝卜星星-CSDN博客_iis回收

本文内容基于win7的IIS7.5,该篇内容主要说明什么情况会导致IIS进行回收,以便于当出现回收问题时快速定位问题

通过控制面板下的管理工具,可以打开 Internet 信息服务(IIS)管理器,打开后界面大致如下:

通过选择“应用程序池”,然后选中你要维护的程序池,最右侧栏目可以看到“编辑应用程序池”选项,点击“正在回收”,会打开如下界面:

这是默认情况下的IIS回收设置,可以看到有“固定时间间隔”、“固定请求数量”、“特定时间”、“虚拟内存使用情况”和“专用内存使用情况”五项设置,如果进行了相应设置,当项目运行中任意一项满足了回收设置条件,IIS就会进行回收

当然实际会导致IIS回收的并不只有这五项,点击“高级设置”,打开如下界面:

第一个红色方块区域对应前面设置的回收配置部分,而下面两块红色方块区域对应另外两种会导致IIS回收的情况:“闲置超时”以及“故障”(注意这里的“快速故障防护”指的是当IIS短时间内频繁出错时的处理方式,每次web程序出错其实都会导致该应用程序池重启

这时候我们再打开“回收日志”设置部分,可以看到所有会导致IIS回收的情况:

ISAPI报告了非正常状态:对应故障部分,指的是web程序运行过程中没有处理的异常情况,这种时候一般能在“事件查看器”中找到对应的错误日志

超出请求限制:对应“固定请求数量”设置

超出虚拟内存限制:对应“虚拟内存使用情况”设置

固定时间间隔:对应“固定时间间隔”设置

手动回收:这个不多说了,就是人为的触发回收,对应第一张图“应用程序池任务”的“回收”部分

特定时间:对应“特定时间”设置

已超出专用内存限制:对应“专用内存使用情况”设置

应用程序池配置已更改:这个对应的情况最多,包括web.config配置变更(包括部分通过configSource方式独立出去的配置,如connectionStrings,继承自System.Configuration.IConfigurationSectionHandler的自定义配置,但不包括继承自System.Configuration.ConfigurationSection的自定义配置,注意你在iis管理器中设置iis配置其实也是在修改web.config)、bin目录下任意文件发生变化

回收日志可以在“事件查看器”的“windows日志”--“系统”中查看,如下图:

在截图中可以看到该次回收是由“闲置超时”导致的

最后附加 IIS7.5预加载  IIS8预加载

猜你喜欢

转载自blog.csdn.net/qq_17486399/article/details/79292483