【问题标题】:IIS and the number of w3wp processesIIS 和 w3wp 进程数
【发布时间】:2011-01-26 03:36:27
【问题描述】:

我在 Server 2008 上运行 IIS 7,一个应用程序的 AppPool 基本上只是 ASP.NET WebMethods 的集合。其中一些方法在返回之前会处理数小时。

奇怪的是,有时当我启动多个同时请求时,IIS 会启动单个 w3wp 进程(并且似乎在请求之间共享它),而有时它会启动多个 w3wp 进程(每个请求 1 个)。

在观察这一点时,我总是小心翼翼地使用任务管理器并查看所有用户的进程。谁能解释这种不一致的行为?

【问题讨论】:

    标签: asp.net iis windows-server-2008 asmx


    【解决方案1】:

    默认情况下,每个应用程序池都有 1 个 w3wp 进程,但在网络花园中,每个应用程序池可以存在多个 w3wp 进程。

    编辑:更多关于web gardens的信息

    【讨论】:

    • 你知道网络花园如何决定是为一个请求启动一个新的 w3wp 进程,还是为多个请求共享一个 w3wp 进程?
    • 我不确定另一个进程何时启动,但您可以控制 iis 中的最大进程数。在 IIS6 中找到应用程序池右键,属性,你会看到最大工作进程(在 ii7 中是在应用程序池的高级设置下)。
    【解决方案2】:

    可能是时候重新考虑您的网络花园了。 Scott Forsyth 有一个有趣的 11 分钟视频日志,讲述了为什么网络花园会适得其反:http://dotnetslackers.com/articles/iis/Why-You-Shouldnt-Use-Web-Gardens-in-IIS-Week-24.aspx

    他在 VLog 中提到的文章的链接:

    IIS6 和 IIS7 的调优建议——阅读整篇文章:http://support.microsoft.com/kb/821268 更多信息http://blogs.msdn.com/b/tmarq/archive/2007/07/21/asp-net-thread-usage-on-iis-7-0-and-6-0.aspx

    他的底线是,如果您遇到的性能问题可以通过网络花园解决 - 使用网络花园作为一个很好的拐杖,直到潜在的性能问题(通常是资源争用)得到解决。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-11-07
      • 1970-01-01
      • 2015-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-11
      相关资源
      最近更新 更多