父网站应用程序池是否也为子应用程序池提供服务?

父网站应用程序池是否也为子应用程序池提供服务?

我在 IIS7 上的自己的应用程序池中运行 .NET Web 应用程序。父网站设置为在其自己的应用程序池中运行。今天我们注意到有大量连接进入 IIS。我尝试浏览 Web 应用程序目录中的普通 .html 页面,但它挂起了。然后我尝试浏览父网站根目录中的另一个普通 .html 文件,它也挂起了。

在性能监视器中,我看到默认网站的连接数约为 8k,并且还在不断增加。我似乎无法理解是我的应用程序有问题,还是 IIS 本身有问题。

如果是我的应用程序,那么父网站根目录中的 html 页面是否仍然可以提供服务?

编辑:此外,如果我关闭应用程序池,父网站根目录中的 html 页面仍然无法显示。

答案1

Mike,对标题中问题的简短回答是“否”。每个拥有自己的应用程序池的应用程序都不会继承任何其他应用程序池。

但在我看来,问题出在其他地方。我不太熟悉 Windows 的 TCP 堆栈和连接限制,但 IIS 本身(将请求路由到各种应用程序和应用程序池的主要进程)可能是导致问题的原因。这可以解释为什么关闭应用程序无法提高 IIS 的响应速度。

8000 名用户是这个网站的常态吗?这只是一次性高峰吗?

另外,尝试提供有关配置的更多信息:RAM 数量、应用程序的性质(静态 HTML?ASP.NET?)等。

答案2

我不这么认为。听起来更像是您的服务器由于连接数过多而耗尽资源。您是否尝试过运行 perf monitor 来检查?您也可以尝试限制应用程序的连接数。

相关内容