对于任何需要超过7-10分钟才能完成的页面,我在iis 7中得到以下错误:
工作进程“xxxx”服务应用程序池“xxxxxx”未能在分配的时间内停止协议“http”的侦听器通道。
为什么我要停止听者频道?我怎么才能增加分配的时间呢?我应该吗?或者这是另一个问题的迹象?
发布于 2009-07-07 00:18:57
IIS定期(默认情况下,每30秒)调用一个工作进程,以确保它仍然是响应的。可能您的辅助进程太忙,无法响应ping,因此IIS试图终止它。当IIS试图终止进程时,它会失败,因为进程仍然保存在内存区域上。
进入IIS,单击“应用程序池”,然后右击应用程序池并选择“高级设置”。在Process标题下,在Ping Enabled旁边选择False,并查看是否修复了问题。另一种选择是增加Ping最大响应时间。

至于这是否意味着一个更大的问题,我会说是的,它确实。这种类型的代码似乎不适合同步执行。您可能需要考虑将任务传递给将执行异步回调的Windows服务,或者研究IIS的异步模型(System.Threading)。如何做到这一点可能是堆栈溢出的一个更好的问题。
https://serverfault.com/questions/36683
复制相似问题