2024年6月5日发(作者:)

2011-05-20 23:46 108人阅读 评论(0) 收藏 举报

" 为应用程序池 'AppPool #1' 提供服务的进程关闭时间超过了限制" 的错误出现究

其原因是由于网站的访问量连接数过大,引起应用程序池处理连接的时候,新的还没有接

替,而旧的又要回收,但在回收的过程中不及时,照常应用程序池当机,网站无法访问,

出现了这个错误。

当网站无法访问的时候,手动回收应用程序池,即可恢复,不过手动恢复的话,毕竟

很麻烦,你不能一天都盯着这个网站看吧?问题出在应用程序池的话,那我们就从应用程

序池的配置下手来看是否能解决问题。

1、首先建议每个网站分别建立一个应用程序池,一个应用程序池将对应不同的

进程,在“命令提示符”下使用iisapp命令 可以察看网站对应的

的pid值,方便查找出问题的进程。

2、应用程序池的配置

个人意见觉得在应用程序池的属性窗口中,“回收”和“运行状况”2个选项卡的配

置比较重要。

2.1、回收 选项卡

1、回收工作进程(分钟):在工作进程运行多少分钟后回收工作进程,默认启用,并

且设置为1740分钟(29小时);

2、回收工作进程(请求数目):在工作进程处理多少 个HTTP请求后终止此工

作进程,默认禁用,如果启用则默认值为35000;

3、在下列时间回收工作进程:在指定的时间回收工作进程,默认禁用;如需启

用,勾选后点击添加按钮添加回收的时间即可,使用24小时制定义回收的时间;

4、消耗太多内存时回收工作进程:

最大虚拟内存(兆):当工作进程使用的虚拟内存达到设置的值时回收工作进

程,默认禁用,如果启用则默认值为500 M;建议设置为不超过虚拟内存总数的70%;

最大使用的内存(兆):当工作进程使用的物理内存达到设置的值时回收工作

进程,默认禁用,如果启用则默认值为192 M;建议设置为不超过物理内存总数的60%;

2.2、性能

1、在空闲此段时间后关闭工作进程(分钟):当工作进程空闲多少分钟后关闭此工

作进程,这降低了空闲工作进程对系统资源和CPU性能的消耗,默认启用并且设置为20

分钟;

2、核心请求队列限制为(请求次数):当接收到某个客户端发送的HTTP

请求时,如果处理此请求的对应应用程序池的工作进程还处于忙状态,则将接收

到的请求保存在对应应用程序池的请求队列中,直到工作进程空闲为止。此选项即用于设

置此应用程序池的请求队列所能容纳的请求数量,默认情况下每个应用程序池的请求队列

限制为保留1000个请求,如果超出则向客户端返回503错误,你可以根据需要适当进行

修改,最大可以设置为65535。但是如果设置太大则会消耗大量的系统资源 ,而设置太