大佬教程收集整理的这篇文章主要介绍了windows-server-2008 – w3wp / asp.net高内存使用率 – 这有问题吗?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经设置了性能计数器,结果如下:
@H_40_17@memory Committed Bytes 10 145 739 948,0000 Pages Output/sec 0,0000 Paging File _@R_120_10586@l % Usage 28,998 Process _@R_120_10586@l w3wp Working Set 7 480 003 280 5 604 421 056我还对w3wp进程进行了内存转储(当它为/ -2GB时,因为较大的转储失败).在转储上运行DebugDiag并没有让我更聪明.似乎.net本身只占用800MB而且大部分内存被“别的东西”占用.
.NET GC Heap Information GC Heap Size 826,09 MBytes @R_120_10586@l Commit Size 1217 MB @R_120_10586@l Reserved Size 16190 MB Heap Analysis SumMary number of heaps 29 Heaps @R_120_10586@l reserved memory 1,89 GBytes @R_120_10586@l committed memory 1,79 GBytes ... (largest of the Heaps) Reserved memory 1,69 GBytes Committed memory 1,67 GBytes(99,14% of reserved) Uncommitted memory 14,86 MBytes(0,86% of reserved) number of heap segments 113 segments number of uncommitted ranges 113 range(s) Size of largest uncommitted range 0 Bytes
问题是我不确定这种高内存使用是一个问题.所以我正在寻找的是如何处理这个问题的一些指导:
>有人告诉我这是IIS7的工作方式,我不应该担心内存.
>或者有人指出我如何进一步分析这个转储(特别是我怎么能看到1,6GB堆中的内容.
>或者向我解释为什么.net正在使用的内容和W3WP正在使用的内容之间存在如此大的差异.
编辑:
这是我在ProcExp中看到的:
@L_874_7@
如您所见,所有堆中的总字节数为1.12GB.当时,W3WP使用的是6.4GB.为什么这两个数字之间有这么大的差异?什么可以占用这个空间?这是我看到的LOH的碎片吗?
你应该做的第一件事是确定内存所在的生成堆(0,1,2或3(大对象堆))
Process Explorer提供了一种显示此信息的简便方法.
在大多数情况下,.NET GC是自我管理的.有一些.config参数可以调整它,但这实际上是开发人员应该提供指导的区域.
如果要检查堆,WinDbg可能是首选工具.
http://blogs.microsoft.co.il/sasha/2010/08/24/psscor2-object-inspection-commands-part-2/
http://blogs.microsoft.co.il/sasha/2010/08/26/psscor2-gc-heap-analysis-commands/
以上是大佬教程为你收集整理的windows-server-2008 – w3wp / asp.net高内存使用率 – 这有问题吗?全部内容,希望文章能够帮你解决windows-server-2008 – w3wp / asp.net高内存使用率 – 这有问题吗?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。