ASPNET性能计数器_第1页
ASPNET性能计数器_第2页
ASPNET性能计数器_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ASP.NET性能计数器<转>      ASP.NET 支持两组性能计数器:系统和应用程序。前者在 ASP.NET 性能计数器对象中的 PerfMon 中公开;后者在 ASP.NET Applications 性能对象中公开。ASP.NET 性能对象中的 State Server Sessions 计数器(仅适用于在其中运行状态服务器的服务器计算机)和 ASP.NET Applications 性能对象中的 Sessions 计数器(仅适用于进程中发生的用户会话)之间存在很大的差异。   

2、注意 每 400 毫秒更新一次与每个性能计数器关联的值。     在监视 ASP.NET Web 应用程序的性能时,应该始终跟踪下表中列出的性能计数器。性能对象性能计数器ASP.NETApplication RestartsASP.NETRequests QueuedASP.NETWorker Process RestartsASP.NET ApplicationsErrors TotalASP.NET ApplicationsRequests/SecProcessor% CPU Utilization    % CPU U

3、tilization 计数器监视 Web 服务器计算机上的 CPU 使用情况。无论客户端负载如何,CPU 使用率很低或者无法达到 CPU 最大使用率就意味着 Web 应用程序中存在资源或锁定竞争。     此外,在确定 Web 应用程序性能问题时,下表中列出的性能计数器是非常有用的。性能对象性能计数器ASP.NET ApplicationsPipeline Instance Count.NET CLR Exceptions# of Exceps ThrownSystemContext Switches/sec    # of

4、 Exceps Thrown 计数器显示应用程序中引发的异常数量,因为它们可能会对性能造成不利影响。但是,某些代码路径必须依赖异常才能正常工作。例如,HttpResponse.Redirect 方法始终引发一个无法捕获的异常 ThreadAbortException。因此,使用 Errors Total 计数器跟踪引发的异常数量以查看异常是否在应用程序上生成错误更有用处。     Context Switches/sec 计数器测量 Web 服务器计算机中所有 CPU 切换线程上下文的速率。如果此计数器的数值较大,则表明锁定竞争很激烈,或者线程在用户和内

5、核模式之间频繁切换。可能还需要使用采样分析器和其他工具进行进一步的分析。     以下列表详细介绍了 ASP.NET 和 ASP.NET Applications 性能对象中的计数器。     ASP.NET 系统性能计数器    ASP.NET 支持以下 ASP.NET 系统性能计数器。它们汇集 Web 服务器计算机上所有 ASP.NET 应用程序的信息,或者它们通常应用于运行相同应用程序的 ASP.NET 服务器的系统。它们可能包含 Web 场和 Web 园。&

6、#160;    Application Restarts :在 Web 服务器的生存期内应用程序已重新启动的次数。每发生一次 Application_OnEnd 事件,应用程序重新启动次数就会增加一次。可能由于以下原因而出现应用程序重新启动:更改 Web.config 文件,更改应用程序 Bin 目录中存储的程序集,或者对 Web 表单页更改过多。此计数器意外增加可能意味着,未知问题将导致 Web 应用程序关闭。在此类情况下,应该尽早调查原因。     注意 每次重新启动 Internet 信息服务 (IIS) 主机时,就

7、会重置该值。     Application Running:服务器计算机上运行的应用程序的数量。     Requests Disconnected :由于通讯故障而断开的请求数量。     Requests Queued :在队列中等待服务的请求数。当此数值随客户端负载线性增加时,则 Web 服务器计算机已达到它所能处理的并发请求的上限。此计数器的默认最大值为 5,000。可以在计算机的 Machine.config 文件中更改此设置。   

8、  Requests Rejected :由于处理请求的服务器资源不足而未执行的请求总数。此计数器表示返回 503 HTTP 状态代码(表示服务器太忙)的请求数量。     Request Wait Time :队列中的最近请求等待处理的亳秒数。    Session State Server Connections Total :存储进程外会话状态数据的计算机的会话状态连接总数。     Session SQL Server Connections Total :存储会话状

9、态数据的 Microsoft SQL Server 数据库的会话状态连接总数。     State Server Sessions Abandoned :已明确放弃的用户会话数。它们是由特定用户操作结束的会话,如关闭浏览器或浏览到另一个站点。该计数器只用于运行状态服务器服务 (aspnet_state) 的计算机上。     State Server Sessions Active :当前活动用户会话的数量。该计数器只用于运行状态服务器服务 (aspnet_state) 的计算机上。  

10、0;  State Server Sessions Timed Out :由于用户非活动而处于非活跃状态的用户会话数。该计数器只用于运行状态服务器服务 (aspnet_state) 的计算机上。     State Server Sessions Total :在进程生存期内创建的会话数。此计数器是 State Server Sessions Active、State Server Sessions Abandoned 和 State Server Sessions Timed Out 的累积值。该计数器只用于运行状态服务器服务 (aspnet

11、_state) 的计算机上。     Worker Process Restarts :在服务器计算机上已重新启动工作进程的次数。如果工作进程意外失败或者有意回收,则可以重新启动该工作进程。当此计数器出现意外增加时,应该尽早调查原因。     Worker Process Running :服务器计算机上运行的工作进程的数量。    ASP.NET Application 性能计数器    ASP.NET 支持以下应用程序性能计数器,可以使用这些

12、计数器来监视单个 ASP.NET 应用程序实例的性能。这些计数器均有一个唯一实例 _Total_,该实例合计 Web 服务器上所有应用程序的计数器(与本主题第一节中描述的全局计数器类似)。_Total_ 实例始终可用。当服务器上没有应用程序时,这些计数器将显示零。     Anonymous Requests :使用匿名身份验证的请求数。     Anonymous Requests/Sec :每秒使用匿名身份验证的请求数。     Cache Total Entries:缓

13、存中的总项数。该计数器既包括由 ASP.NET 页框架在内部使用的缓存,又包括通过公开的 API 在外部使用的缓存。     Cache Total Hits :缓存的命中总数。该计数器既包括由 ASP.NET 页框架在内部使用的缓存,又包括通过公开的 API 在外部使用的缓存。     Cache Total Misses :每个应用程序失败的缓存请求数。该计数器既包括由 ASP.NET 在内部使用的缓存,又包括通过公开的 API 在外部使用的缓存。    Cache Total H

14、it Ratio :缓存的命中与未命中的比率。该计数器既包括由 ASP.NET 在内部使用的缓存,又包括通过公开的 API 在外部使用的缓存。     Cache Total Turnover Rate :每秒对总缓存的添加数和移除数。这对确定缓存的使用效率很有帮助。如果反复很大,则无法有效地使用缓存。     Cache API Entries :应用程序缓存中的总项数。     Cache API Hits :当只通过外部缓存 API 访问缓存时,缓存中的命中总数。该计数

15、器不跟踪由 ASP.NET 在内部使用的缓存。     Cache API Misses:在通过外部缓存 API 访问时,失败的缓存请求的总数。该计数器不跟踪由 ASP.NET 在内部使用的缓存。     Cache API Hit Ratio :在通过外部缓存 API 访问时,缓存命中与未命中的比率。该计数器不跟踪由 ASP.NET 在内部使用的缓存。     Cache API Turnover Rate :在通过外部 API 使用(不包括 ASP.NET 页框架在内部使

16、用的缓存)时,缓存每秒增加或减少的数量。这对确定缓存的使用效率很有帮助。如果反复很大,则无法有效地使用缓存。     Compilations Total :在当前 Web 服务器进程的生存期内发生的编译总数。当在服务器上动态编译扩展名为 .aspx、.asmx、.ascx 或 .ashx 的文件或代码隐藏源文件时,就会发生这种情况。     注意 在对应用程序的所有部分提出请求时,此数值开始逐步达到峰值。但是,在进行编译时,将产生的二进制数据保存到磁盘(在其中重新使用该数据,直到其源文件发生变化时为止)中。这意味

17、着,即使进程重新启动,计数器仍可保持为零(非活跃),直到修改或重新部署应用程序时为止。     Debugging Requests:在启用调试时发生的请求数。     Errors During Preprocessing :在分析期间发生的错误数。不包括编译和运行时错误。     Errors During Compilation :在动态编译期间发生的错误数。不包括分析程序和运行时错误。     Errors During Exe

18、cution :在执行 HTTP 请求期间发生的错误总数。不包括分析程序和编译错误。     Errors Unhandled During Execution :在执行 HTTP 请求期间发生的未处理错误的总数。     注意 未处理的错误是指任何未捕获的运行时异常,它转换页面上的用户代码并输入 ASP.NET 内部错误处理逻辑。在以下情况下,此规则出现例外情况:     1:启用了自定义错误和/或定义了错误页面。     2:在用户

19、代码中定义了 Page_Error 事件并且清除了该错误(使用 HttpServerUtility.ClearError 方法)或执行重定向。    Errors Unhandled During Execution/Sec :在执行 HTTP 请求期间每秒发生的未处理异常的数量。     Errors Total :在执行 HTTP 请求期间发生的错误的总数。包括任何分析程序、编译或运行时错误。此计数器是 Errors During Compilation、 Errors During Preprocessing 和 Er

20、rors During Execution 计数器的总和。正常工作的 Web 服务器不应生成错误。如果在 ASP.NET Web 应用程序中发生错误,则它们可能会由于错误恢复的代码路径不同而歪曲吞吐量结果。在执行调试之前,调查并修复应用程序中的任何错误。     Errors Total/Sec :在执行 HTTP 请求期间每秒发生的错误数。包括任何分析程序、编译或运行时错误。     Output Cache Entries :输出缓存中的总项数。     Output C

21、ache Hits :从输出缓存中处理的请求总数。     Output Cache Misses :每个应用程序失败的输出缓存请求数。     Output Cache Hit Ratio :从输出缓存中处理的全部请求所占的百分比。     Output Cache Turnover Rate :输出缓存每秒增加或减少的数量。如果反复很大,则无法有效地使用缓存。     Pipeline Instance Count :指定 ASP.

22、NET 应用程序的活动请求管道实例的数量。因为在管道实例内只能运行一个执行线程,所以此数值给出了为某个应用程序处理的并发请求的最大数量。在大多数情况下,在具有负载时最好将此数值控制很低,这表明 CPU 的使用率很高。     Request Bytes In Total :所有请求的总大小(以字节为单位)。     Request Bytes Out Total :发送到客户端的响应的总大小(以字节为单位)。这不包括标准的 HTTP 响应头。     Requests Exe

23、cuting :当前执行的请求数。     Requests Failed :失败请求的总数。如果任何和全部状态代码大于或等于 400,就会增加此计数器。     注意 导致 401 状态代码的请求将增加此计数器和 Requests Not Authorized 计数器。导致 404 或 414 状态代码的请求将增加此计数器和 Requests Not Found 计数器。导致 500 状态代码的请求将增加此计数器和 Requests Timed Out 计数器。     注意 在拒绝请求(无法完成,因为拒绝是由 IIS 而不是由进程模型完成的)时,等价的 ASP 计数器也将增加。     Requests Not Found :由于未找到资源而失败的请求数(状态代码 404、414)。     Requests Not Authorized :由于无授权而失败的请求数(状态代码 401)。     Requests Succeeded :已成功执行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论