如何在工作进程无响应时阻止IIS回收应用程序池

时间:2016-05-23 15:53:47

标签: asp.net asp.net-mvc wcf iis

我们有一个处理大量请求的WCF服务。

正如我所发现的,当cuncurrent请求的数量超过最大cuncurrent连接的限制时,后续请求将排队等待稍后执行。如果在这些请求有机会执行之前发生超时,IIS会确定工作进程无响应并将其终止(或回收应用程序池)。

回收过程大约需要一分钟,同时服务将会停止,这对我们来说是个大问题。

无论代码中的超时原因和响应时间长(我们已经在处理它),我的问题是:

如果我们为这个应用程序池定义了多个工作进程,那么如果其中一个工作进程处于相同的情况会发生什么? IIS是否会回收应用程序池,否则特定的工作进程将被终止,而其他工作进程将继续为请求提供服务?

1 个答案:

答案 0 :(得分:0)

如果你在app-pool(所谓的web园)中有多个工作进程,并且其中一个超过了请求/内存的限制/没有响应ping,那么所有这些进程都将被回收。

http://www.treeloop.com/blog/iis-application-domain-and-pool-recycling