IIS7 Web服务的性能问题

时间:2012-07-15 20:37:45

标签: performance web-services iis-7

我们在重负载下处理请求的速度很慢。在这些突发期间查看当前正在运行的请求时,我可以看到许多对我们的Web服务代码的请求。

请求数量不是很大,但它们似乎停留在预处理状态。以下是一个例子:

由于需要支持一些遗留代码,我们在经典模式下运行IIS7应用程序池。

其他请求仍在继续处理,但这些卡住的请求似乎逐渐填满了可用的线程,导致其他页面的处理速度变慢。

有没有人知道这些请求被卡住的地方。

数据库似乎没有资源问题,请求状态显示建议这都是预处理。

我们已对本地计算机上涉及的代码运行负载测试,无法复制问题。

另一个可能的因素是我们正在使用MVC和UrlRouting。

非常感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

遗憾的是,有些问题只发生在生产服务器上,因为负载测试永远无法模拟现实世界的用户。

您可以尝试在性能不佳时捕获挂起转储,然后分析它们(通过http://support.microsoft.com自行或打开支持案例以使用Microsoft支持)。

通常您可能遇到了着名的线程池瓶颈http://support.microsoft.com/kb/821268。转储分析可以轻松告诉罪魁祸首并帮助找到解决方案。

答案 1 :(得分:0)

为什么不将它们移动到自己的AppPool中以将它们与经典ASP应用程序分开 - 然后您将有更多选项进行调整。