高性能ASP.NET站点构建之监测CLR性能

作者:控件中国网   出处:互联网   2015-07-22 11:00:54   阅读:9

本文将为大家深入.NET内核进行分析,包括监测CLR是否导致了一些性能问题。希望对大家有所帮助


 

AD: eDocEngine VCL - PDF控件 —正版、购买、下载、价格、销售、代理、授权、技术支持尽在控件中国网

 

表明了从上次垃圾回收机制运行之后到现在这段时间内,运行垃圾回收机制所花的时间占总时间的百分比。不要超过10%。



 

这个数值不是表明当前托管堆中Gen 0对象所占的大小,而是指:还可以分配的Gen 0对象的大小



 

是上面Gen 0 heap size,Gen 1 heap size,Gen 2 heap size,Large Object Heap size所有的种和,也就是整个托管堆所占的空间大小



 

介绍完上面的一些计数器之后,大家可以运行 perfmon 命令,打开性能监测工具。


 

下面开始介绍CLR Profiler(CLR 透析器)


 

CLR Profiler


 

CLR Profiler是微软开发的一个工具,这个工具可以用来检测CLR所占用的内存详情。


 

大家可以去下面的链接去下载这个工具:


 

http://www.microsoft.com/downloads/details.aspx?familyid=a362781c-3870-43be-8926-862b40aa0cd0 displaylang=en 


 

下面的链接讲述这个工具的用法:


 

http://msdn.microsoft.com/zh-cn/magazine/ee309515.aspx#MtViewDropDownText


 

在这里,只是简单的介绍一下如何使用,至于操作,还请大家去查看上面给出的链接。使用的步骤如下:


 

1.  运行CLR Proflie


 

2.  确保 Profiling active, Allocations, Calls 都勾选上。如下:


 


 

3.  选择 File- Profile ASP.NET .这个操作的背后会停止IIS的运行,然后插入一些指令,然后重启IIS,所以这个工具在生产环境中慎用。


 


 

4.  然后们可以在VS中F5运行们的网站(确保在创建网站的时候是以IIS方式来建立站点的,而不是选择 文件系统 的方式建立)


 

5.  在界面上面点击 Kill ASP.NET .这个操作的背后会移除之前加入到IIS中的一些监视指令。点击按钮之后,会出现一些界面。这个界面上面显示了Gen0, Gen1 Gen2 ,LOH所占的大小,如下:


 

 


 

6.  们还可以点击 Histogram 按钮。这个界面展示了不同大小以及不同类型的对象所占的比例。下面对看出,系统中有很多的string对象,也就说,系统中的string类型的对象占据了系统大部分的内存空间。


 


 

eDocEngine VCL - PDF控件 —正版、购买、下载、价格、销售、代理、授权、技术支持尽在控件中国网

 

Copyright© 2006-2015 ComponentCN.com all rights reserved.重庆磐岩科技有限公司(控件中国网) 版权所有 渝ICP备12000264号 法律顾问:元炳律师事务所
客服软件
live chat