IIS工作进程和工作线程

时间:2018-11-02 14:53:45

标签: c# performance iis worker-process worker-thread

我有一个简单的ASP.Net MVC应用程序,该应用程序部署在IIS中。我在此应用上进行了样本负载测试。我的应用程序中记录了响应时间。当我将应用程序中的响应时间与IIS响应时间进行比较时,IIS响应时间比我的应用程序日志高。

据我了解,IIS没有足够的辅助线程来处理请求并保持请求暂挂。此保留时间也记录为IIS响应时间的一部分。

我的理解正确吗?如果是,如何增加工作线程,以增加总吞吐量。

我尝试了以下步骤来增加工作线程,但更改后没有看到任何影响。 https://support.microsoft.com/en-us/help/821268/contention-poor-performance-and-deadlocks-when-you-make-calls-to-web-s

致谢

1 个答案:

答案 0 :(得分:1)

如果您的服务器已被当前请求饱和(已满),则添加更多线程可能不是一个好主意。这只会增加对资源的争用并使问题变得更糟。

当您的服务器一次接收到太多请求且超出其容量时,IIS将对请求进行排队以减轻压力,直到当前请求可以完成为止。

您的测试仅显示了系统的容量。此时,如果容量不够高,则需要考虑优化策略或考虑其他选项,例如“向上扩展”或“向外扩展”。