应用程序池内存使用监视器

clk*_*chu 26 iis-7

我在IIS 7中有一个网站,我需要在有并发请求时监视该网站的内存使用情况.你能告诉我怎么办?是否有可用的工具或可以使用IIS的任何功能?

小智 33

Windows性能监视器应该能够让您非常接近您想要的.那里有数百个指标可供使用.

要访问它,只需执行开始 - >运行 - > perfmon从那里,在左窗格中选择"性能监视器",然后单击"+"按钮开始添加计数器.

如果它是一个基于ASP.NET的网站,您可以选择一个"ASP.NET应用程序"计数器类别(如果安装了多个版本的ASP.NET,则可能有多个)并单击"托管内存"用'柜台.在下面的列表中,显示所有actibe网站,您可以为此添加计数器.您可以实时查看计数器或选择将数据保存到磁盘或数据库以供以后分析.

有一个W3SVC_W3WP计数器类别,允许您检查特定应用程序池的指标,但没有(我可以看到)将提供每个应用程序池使用的内存.

根据您要确定的内容,您可能会找到一堆指标来帮助您进行分析.

  • 可能是服务器启用此功能所需的其他更改,请参阅下面的答案. (2认同)

Jam*_*ter 14

要使"托管内存使用"计数器在我的服务器上运行,我发现我必须进行额外的更改:

aspnet.config配置文件(一般位于C:\Windows\Microsoft.NET\Framework\v4.0.30319,因人而异)需要被修改,以包括appDomainResourceMonitoring元素(虽然有可能会是其他的东西也一样):

<configuration> 
  <runtime> 
    <appDomainResourceMonitoring enabled="true"/> 
  </runtime>
</configuration>
Run Code Online (Sandbox Code Playgroud)

无需重新启动IIS,但您确实需要回收要监视的应用程序池.

有关详细信息,请参阅这两篇博文:

Asp.net 4.0中各个Asp.net应用程序的性能监控

Asp.Net 4.0:概述 - 第III部分

  • 仍然无法正常工作.我看到计数器,并且在访问应用程序时请求计数器增加,但CPU和内存使用值始终为0. (2认同)