最简便的ASP.NET性能监视工具就是性能计数器啦:
运行,输入perfmon,可以打开系统自带的性能监视器,可以添加性能计数器。
性能对象 | 性能计数器 |
ASP.NET | Application Restarts |
ASP.NET | Requests Queued |
ASP.NET | Worker Process Restarts |
ASP.NET Applications | Errors Total |
ASP.NET Applications | Requests/Sec |
Processor | % CPU Utilization |
ASP.NET性能监视
注意
如果不管客户端负载如何,CPU 使用均低或者无法最大化 CPU 使用,则表明 Web 应用程序中存在锁或资源争用。
另外,下面的性能计数器对确定 Web 应用程序的性能问题也可能有价值。
性能对象 | 性能计数器 |
ASP.NET Applications | Pipeline Instance Count |
.NET CLR Exceptions | # of Exceps Thrown |
System | Context Switches/sec |
ASP.NET性能监视
注:
1. “# of Exceps Thrown”计数器显示应用程序中引发的异常数,因为这些可能有性能方面的暗示。但是,某些代码路径依赖异常才能正常使用。例如,Response 对象上的 Redirect 方法引发 ThreadAbortException 异常,而该异常无法被捕获。因此,使用“Errors Total”计数器跟踪该值(以查看异常在应用程序上是否产生了错误)可能很有用。
2. Context Switches/sec 计数器测量 Web 服务器计算机中的所有 CPU 切换线程上下文的速率。此计数器的高数值通常说明存在较高的锁争用,或者线程在用户模式与内核模式之间有大量切换。如果遇到这种情况,应该使用采样分析器和其他工具进行进一步的研究
【编辑推荐】