我在WIN SERVER 2008 R2 Enterprise 64位上以2.53 Ghz(2 cpu)和8 GB RAM在单个生产服务器(虚拟)上托管7个网站.
Web服务器是IIS 7,所有网站都使用.NET Framework 4.0应用程序池.
我当前的内存使用量大约是8GB中的4.16 GB,而w3wp.exe是消耗大部分内存使用量的进程(此时大约为1.6 GB),其次是使用(1.5 GB)的sqlservr.exe.
我想做的是知道7个网站中哪个网站消耗的内存最多,以便我可以看看.
我已经尝试过Process Explorer和资源监视器,但它只能显示w3wp.exe占用了多少内存,而不是单个网站的使用情况.
有没有办法让我能指出内存hogger?
解决方法
您可以使用Microsoft的
Debug Diag工具进行内存转储.
基本过程是:
>启动DebugDiag
>取消向导
>单击“进程”选项卡
>选择w3wp
>右键单击并选择“创建完整转储”
> Snigger静静地对自己说因为你说“转储”
>转储完成后(再次触发),单击“高级分析”选项卡
>使用2 Memory Pressure Analyzer脚本查看您是否可以看到哪些对象正在使用大量内存.
我建议结合Uri May的答案这样做,否则你可能会浪费很多时间.