Windows性能监视器工具perfmon

上传人:cn****1 文档编号:486247882 上传时间:2023-11-23 格式:DOC 页数:8 大小:96.50KB
返回 下载 相关 举报
Windows性能监视器工具perfmon_第1页
第1页 / 共8页
Windows性能监视器工具perfmon_第2页
第2页 / 共8页
Windows性能监视器工具perfmon_第3页
第3页 / 共8页
Windows性能监视器工具perfmon_第4页
第4页 / 共8页
Windows性能监视器工具perfmon_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《Windows性能监视器工具perfmon》由会员分享,可在线阅读,更多相关《Windows性能监视器工具perfmon(8页珍藏版)》请在金锄头文库上搜索。

1、如果需要在一台计算机上监视多个ReportServer实例,可以同时或单独监视这些实例。选择要包括的实例是计数器添加过程的一部分。有关使用Windows附带的性能工具的更多信息,请参见微软Windows产品文档。若要访问性能工具从“开始”菜单上选择“运行”。在“打开”文本框中输入“perfmon”,然后单击“确定”。 在性能监视器工具中,在左侧窗格里选择SystemMonitor对象,然后右击“性能”图表。 选择“添加计数器”。现在,可以开始选择这些对象和要监视的计数器了。ASP.NET应用程序性能计数器有关ASP.NET应用程序性能计数器的大部分信息最近已被合并到一个题为“改善.NET应用程

2、序的性能和伸缩性”的综合文档中。下表描述了一些可用于监视和优化ASP.NET应用程序(包括ReportingServices)性能的重要计数器。性能对象计数器实例描述Processor(处理器)%ProcessorTime(处理器时间百分比)_Total“ProcessorTime”监视运行Web服务器的计算机的CPU利用率。低CPU利用率或者无法最大化CPU利用率(无论客户端负载为多少)都表明Web应用程序中存在对资源的争用或锁定。Process(进程)%ProcessorTime(处理器时间百分比)aspnet_wp或w3wp(具体情况视IIS版本而定)由ASP.NET工作进程所使用的处理

3、器时间所占的百分比。在将标准负载情况下的性能与先前捕获的基准进行对比时,如果此计数器的值出现下降,则说明降低了对处理器的需求,因此也提高了伸缩性。Process(进程)WorkingSet(工作集)aspnet_wp或w3wp(具体情况视IIS版本而定)由ASP.NET主动使用的内存数量。虽然应用程序开发人员对应用程序使用的内存数量拥有最大的控制权,但系统管理员也可通过调整会话的超时期限来显著影响这一点。Process(进程)PrivateBytes(专有字节)aspnet_wp或w3wp(具体情况视IIS版本而定)PrivateBytes是当前分配给该进程且不能由其他进程共享的内存数量(以字

4、节计)。不时出现的尖峰表明某些地方存在瓶颈,会导致工作进程继续持有不再需要的内存。如果此计数器突然下降为接近0的值,则可能表示ASP.NET应用程序由于无法预料的问题进行了重启。为了验证这一点,请监视“ASP.NETApplicationRestarts”计数器。ASP.NETApplications(ASP.NET应用程序)Requests/Sec(每秒的请求数)_Total允许您检验请求的处理速度是否于发送速度相适应。如果每秒请求数的数值低于每秒产生的请求数,则会出现排队现象。这通常意味着已经超过了最大请求速度。ASP.NETApplications(ASP.NET应用程序)ErrorsT

5、otal(总错误数)_Total在执行HTTP请求期间发生的错误总数。包括任何分析器、编译或运行时错误。此计数器是“ErrorsDuringCompilation”(编译错误数)、“ErrorsDuringPreprocessing”(预处理错误数)和“ErrorsDuringExecution”(执行错误数)计数器的总和。运转正常的Web服务器不应产生任何错误。如果错误发生在ASP.NETWeb应用程序中,它们的存在可能会让实际的吞吐量结果产生偏差。ASP.NETRequestExecutionTime(请求执行时间)显示了呈现所请求页面并将其传送给用户所需的时间(以毫秒计)。跟踪此计数器通

6、常要比跟踪页面呈现时间效果更好。此计数器可以更全面地衡量从开始到结束的整个请求时间。在与基准进行对比时,如果此计数器的平均值较低,则说明应用程序的伸缩性和性能均得到了改善。ASP.NETApplicationRestarts(应用程序重新启动)应用程序在Web服务器生存期间发生重新启动的次数。每次发生Application_OnEnd事件时,应用程序的重新启动次数都会增加。应用程序进行重新启动的原因可能是:更改了Web.config文件、更改了存储在应用程序的bin目录下的程序集、或者WebForms页面中发生了太多的更改。如果此计数器的值出现意料之外的增加,说明某些不可预知的问题导致Web应

7、用程序被关闭。在这种情况下,应该认真调查问题原因。ASP.NETRequestsQueued(排队的请求数)在队列中等待服务的请求数。如果此数字随着客户端负载的增加而呈现线性的增长,则说明Web服务器计算机已经达到了它能够处理的并发请求极限。此计数器的默认最大值为5,000。您可以在计算机的Machine.config文件中更改此设置。ASP.NETWorkerProcessRestarts(工作进程重新启动)工作进程在服务器计算机上重新启动的次数。如果出现意料之外的故障或者被有意回收则工作进程会重新启动。如果此计数器的值出现意料之外的增加,应认真调查问题原因。除了上表中介绍的这些核心监视要素

8、之外,在您试图诊断ASP.NET应用程序具有的特定性能问题时,下表中的性能计数器也可对您有所帮助。性能对象计数器实例描述ASP.NETApplications(ASP.NET应用程序)PipelineInstanceCount(管线实例计数)_Total指定ASP.NET应用程序的活动请求管线实例的数量。由于只有一个执行线程可以在管线实例内运行,所以此数值反映了为特定应用程序处理的并发请求的最大数量。大多数情况下,在存在负载的情况下此数值较低为佳,这表明处理器得到了很好的利用。.NETCLRExceptions(.NETCLR异常)#ofExcepsThrown(引发的异常数)显示应用程序中引

9、发的异常数。如果此数值出现意料之外的增加,说明可能存在性能问题。如果仅仅存在异常,则并不需要担心,因为异常对于某些代码路径来说是正常工作的一部分。例如,HttpResponse.Redirect方法通过引发一个不可捕获的异常ThreadAbortException来完成工作。同样,对ASP.NET应用程序跟踪此计数器也更加有用。使用“ErrorsTotal”计数器确定该异常是否将导致应用程序出现意料之外的错误。System(系统)ContextSwitches/sec(每秒的上下文切换次数)测量Web服务器计算机上所有处理器切换线程上下文的速度。如果此计数器的值很高,可能表示对锁的争用频繁发生

10、,或者在线程的用户模式和内核模式之间切换频繁。使用采样优化程序和其他工具执行进一步调查可证实上述猜测。ReportingServices性能计数器ReportingServices包括一组它自己的性能计数器,用于收集有关报告处理和资源消耗方面的信息。可通过Windows性能监视器工具中出现的两个对象来监视实例和组件的状态和活动:MSRS2005WebService和MSRS2005WindowsService对象。MSRS2005WebService性能对象包括一组用来跟踪ReportServer处理过程的计数器,这些处理过程通常通过在线交互式报告浏览操作而引发。这些计数器在ASP.NET停止

11、该Web服务后被重设。下表列出了可用于监视ReportServer性能的计数器,并描述了它们的目的。性能对象:RSWebService计数器描述ActiveSessions(活动会话数)活动会话的数量。此计数器反映了尚未过期的所有浏览器会话总数。这并不是同时处理的请求数,而是存储在ReportServerTempDB数据库中的会话数量。CacheHits/Sec(每秒缓存命中次数)每秒从目录中取得的报告请求的数量。如果此值增加,而“MemoryCacheHits”的值不增加,则说明报告数据没有被重新处理,但是页面被重新呈现。将此计数器与MemoryCacheHits/Sec计数器一同使用,可以

12、确定用于缓存、磁盘或内存的资源是否充足。CacheMisses/Sec(每秒缓存未命中数)每秒未能从目录中(与内存中相对)返回报告的请求数量。将此计数器与MemoryCacheMisses/Sec计数器一同使用,可以确定用于缓存、磁盘或内存的资源是否充足。FirstSessionRequests/Sec(每秒的首次会话请求数)每秒中从ReportServer缓存中启动的新的用户会话数量。MemoryCacheHits/Sec(每秒内存缓存命中数)每秒中从内存中的缓存里取得报告的次数。内存中缓存是ReportingServices缓存的一部分,用于在内存或临时文件中保存已呈现过的报告。这样可以为

13、请求提供最佳的性能,因为无需执行任何处理工作。如果使用内存中缓存,报告服务器将不会通过查询SQLServer来获得缓存的内容。MemoryCacheMisses/Sec(每秒内存缓存未命中数)每秒中未能从内存中的缓存里取得报告的次数。NextSessionRequests/Sec(每秒的下一次会话请求)每秒在现有会话中请求打开报告的次数。ReportRequests(报告请求)当前处于活动状态并且将由ReportServer进行处理的报告数量。ReportsExecuted/Sec(每秒执行的报告数)每秒成功执行的报告的数量。此计数器提供了有关报告处理量的统计信息。综合使用此计数器和Reque

14、st/Sec,比较可从缓存中返回的报告请求的执行情况。Requests/Sec(每秒的请求数)每秒向ReportServer发出的请求数。此计数器跟踪由ReportServer处理的所有类型的请求。TotalCacheHits(缓存命中总数)自服务启动以来,从缓存中获得报告的请求总数。此计数器在ASP.NET停止该Web服务后被重设。TotalCacheMisses(总的缓存未命中数)自服务启动以来,不能从缓存中获得报告的总次数。此计数器在ASP.NET停止该Web服务后被重设。可使用此计数器确定磁盘空间和内存是否充足。TotalMemoryCacheHits(总的内存缓存命中数)自服务启动以

15、来,从内存中缓存里返回的已缓存报告的总数。此计数器在ASP.NET停止该Web服务后被重设。内存中缓存是在CPU内存中存储报告的那部分缓存。如果使用内存中缓存,报告服务器将不会通过查询SQLServer来获得缓存的内容。TotalMemoryCacheMisses(总的缓存未命中数)自服务启动以来,针对内存中缓存的缓存未命中总数。此计数器在ASP.NET停止该Web服务后被重设。TotalProcessingFailures(处理故障总数)自服务启动以来,发生的所有报告处理故障的总数。此计数器在ASP.NET停止该Web服务后被重设。处理故障可能来自报告处理器,也可能来自任何扩展。TotalReportsExecuted(执行的报告总数)自服务启动以来得到成功执行的报告的总数。TotalRequests(总请求数)自服务启动以来,向ReportServer发送的所有请求的总数。RSWindowsService性能对象包括一组用于跟踪报告处理过程的计数器,这些处理过程是通过预定操作而引发的。预定操作可能包括订阅和交付、报告执行快照以及报告历史。微软的工作负载中并不包含任何预定操作或交付操作,此处列出这些性能计数器仅是便于您进行参考。可使用此性能对象监视ReportServerWindows服务。如果您准备在一个横向伸缩配置中运行ReportServer,那么这些计数器应用于所选的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号