Perfmon是啥?

  Perfmon提供了图表化的系统性能实时监视器、性能日志和警报管理,可以用于监视CPU使用率、内存使用率、硬盘读写速度、网络速度等

性能分析方法

 内存分析方法

  内存分析用于判断系统有无内存瓶颈,是否需要通过增加内存等手段提高系统性能表现。

  主要方法和步骤:

  1.首先查看Memory:%Committed Bytes in Use指标

    如果该指标比例比较大,系统可能出现了内存方面的问题,需要继续下面步骤进一步分析。另外也可以查看Available Bytes,如果该值小说明可用内存不足,存在性能瓶颈。

  2.注意Pages/sec、Pages Read/sec和Page Faults/sec的值

    操作系统会利用磁盘较好的方式提高系统可用内存量或者提高内存的使用效率。这三个指标直接反应了操作系统进行磁盘交换的频度。

    Pages/sec值持续高于几百,可能有内存问题。Pages/sec值不一定大就表明有内存问题,可能是运行使用内存映射文件的程序所致。

    Page Faults/sec说明每秒发生页面失效次数,页面失效次数越多,说明操作系统向内存读取的次数越多。此时需要查看Page Read/sec的计数值,该计数器的阀值为5,如果计数值超过5,则可以判断存在内存方面的问题。

  处理器分析方法

  1.首先看System:%Total Processor Time性能计数器的计数值

    该计数器的值提现服务器整体处理器利用率,对多处理器的系统而言,该计数器提醒所有CPU的平均利用率。如果该值持续超过90%,则说明整个系统面临着处理器方面的瓶颈,需要通过增加处理器来提高性能。

  2.其次查看每个CPU的%User Time

    %User Time是系统非核心操作消耗的CPU时间,如果该值较大,可以考虑是否能通过友好算法等方法降低这个值。如果该服务器是数据库服务器,%User Time值大的原因很可能是数据库的排序或是函数操作消耗了过多的CPU时间,此时可以考虑对数据库系统进行优化。

  3.研究系统处理器瓶颈

    查看System:Processor Queue Length计数器的值,当该计数器的值大于CPU数量的总数+1时,说明产生了处理器阻塞。在处理器的%Process Time很高时,一般都随处理器阻塞,但产生处理器阻塞时,Processor:%Processor Time计数器的值并不一定很大,此时就必须查找处理器阻塞的原因。

磁盘I/O分析方法

  1.计算每磁盘的I/O数

    每磁盘的I/O数可用来与磁盘的I/O能力进行对比,如果经过计算得到的每磁盘I/O数超过了磁盘标称的I/O能力,则说明确实存在磁盘的性能瓶颈。

网络分析法

  Network Interface:Bytes Total/sec为发送和接收字节的速率,可以通过该计数器值来判断网络链接速度是否是瓶颈,具体操作方法是用该计数器的值和目前网络的带宽进行比较。

常用性能监控指标

  Perfmon性能监控对象总共有上百个性能指标。对于一个Windows操作系统来说,CPU、Memmery、Disk和Network等关键对象是性能监控中必不可少的项。

常用的性能对象与指标(红色优先重点关注)
性能对象 计数器           提供的信息
Processor %Idle Time %Idle Time是处理器在采样期间空闲的时间的百分比
%Processor Time %Processor Time指处理器用来执行非闲置线程时间的百分比。(即CPU占用率)该计数器是处理器活动的主要说明器
%User Time %User Time指处理器处于用户模式的时间百分比。用户模式是为应用程序、环境分系统和整数分系统设计的有限处理模式。
Memory Available Bytes Available Bytes显示出当前空闲的物理内存总量。当这个数值变小时,Windows开始频繁的调用磁盘页面文件。如果这个数值很小时,例如小于5MB,系统会将大部分时间消耗在操作页面文件上。
%Committed Bytes in Use %Committed Bytes in Use是Committed Bytes与Commit Limit之间的比值。即内存使用百分比
Page Faults/sec Page Faults/sec是指处理器处理错误页的综合速率,用错误页数/秒来计算。当处理器请求一个不在其工作集(在物理内存中的空间)内的代码或数据时出现的页错误。这个计数器包括硬错误(那些需要磁盘访问的)和软错误(在物理内存的其它地方找到的错误页)。许多处理器可以在有大量软错误的情况下继续操作。但是,硬错误可以导致明显的拖延。这个计数器显示用上两个实例中观察到的值之间的差除以实例间隔的持续时间所得的值。
Network Interface Bytes Total/sec Bytes Total/sec是发送和接收字节的速率,包括帧字符在内
Packets/sec Packets/sec为发送和接收数据包的速率
Physical Disk %Busy Time %Busy Time指磁盘驱动器忙于为读或写入请求提供服务所用的时间的百分比。如果只有%Disk Time比较大,硬盘有可能是瓶颈。
Avg. Disk Queue Length Avg. Disk Queue Length指读取和写入请求(为所选磁盘在实例间隔中列队的)的平均数
Current Disk Queue Length Current Disk Queue Length指在收集操作数据时在磁盘上未完成的请求的数目。它包括在快照内存时正在为其提供服务中的请求。这是一个即时长度而非一定间隔时间的平均值。多主轴磁盘设备可以一次有多个请求操作,但是其它同时发生的请求为等候服务。这个计数器可能会反映一个暂时的高或低的队列长度,但是如果在磁盘驱动器存在持续负载,可能值会总是很高。请求等待时间与这个队列的长度减去磁盘上的主轴成正比。这个差值应小于2才能保持良好的性能。

 

性能测试工具LoadRunner32-LR之windows性能监控Perfmon的更多相关文章

  1. Windows性能监控perfmon工具的使用和性能指标的分析

    Windows性能监控工具perfmon的使用和性能指标分析 一.perfmon提供图表化的实时的性能监视器.性能日志.警报管理,能监控CPU的使用率.内存使用率.磁盘I/O(磁盘的读写速度).网络I ...

  2. 【性能监控-Perfmon工具】Perfmon工具使用教程

    一.Perfmon工具简介 Perfmon是一款Windows自带的性能监控工具,提供了图表化的系统性能实时监视器.性能日志和警报管理.通过添加性能计数器可以实现对CPU.内存.网络.磁盘.进程等多类 ...

  3. Linux系统性能测试工具(三)——内存性能综合测试工具lmbench

    本文介绍关于Linux系统(适用于centos/ubuntu等)的内存性能综合测试工具-lmbench.内存性能测试工具包括: 内存带宽测试工具——mbw: 内存压力测试工具——memtester: ...

  4. Linux系统性能测试工具(七)——网络性能工具之iperf

    本文介绍关于Linux系统(适用于centos/ubuntu等)的网络性能测试工具-iperf.磁盘io性能测试工具包括: iperf: netperf 参考链接:https://www.cnblog ...

  5. 性能测试工具LoadRunner17-LR之Controller windows系统资源性能常用计数器

    1.System %Total Processor Time 该计数值用于体现服务器整体的处理器利用率,对多处理器而言,该计数值体现的是所有CPU的平均利用率.如果该值的数值持续超过90%,则可以说明 ...

  6. Windows性能监控监视器(perfmon使用)

    一.在命令窗口或运行中执行perfmon.exe,打开性能监视器 二.在用户定义中,即可新建--数据收集器--性能计数器,步骤如下: 三.添加监控Windows服务器的资源类型,例如:内存(Avail ...

  7. Windows - 性能监控之磁盘剩余空间大小警报

    开始 -> 运行 -> 键入命令 perfmon.msc 数据收集器(Data Collector Sets) -> 用户自定义(User Defined)

  8. windows性能监控

    see also:http://www.cnblogs.com/upDOoGIS/archive/2010/11/19/1881970.html CPU Processor : % Processor ...

  9. 【性能监控-Perfmon工具】手动添加数据收集器,点击保存时需要输入用户NT AUTHORITY\SYSTEM的密码问题

    发现是有的电脑会弹出这种输入用户NT AUTHORITY\SYSTEM密码的现象,有的电脑不会弹出这个对话框.......仍然没搞懂是为什么? 关键是输入windows用户登录时的密码也不对!!压根不 ...

随机推荐

  1. Laradock使用教程(新手版)

    Laradock使用教程 背景 最近我们公司把开发环境从windows系统换到了Ubuntu系统.用windows系统的时候,我们一般用phpStudy集成环境的比较多.换到Linux环境下,我们选择 ...

  2. C++新标准:列表初始化

    一.列表初始化意义 C++新标准为vector提供了一种新的初始化方式:列表初始化.适用于知道多个成员具体值的情况. 二.列表初始化用法 /*1.空vector<int>*/ vector ...

  3. Java50道经典习题-程序25 根据输入求输出

    题目:一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同.分析:分别创建两个数用于判断,一个数为12321,另一个数是12341 分别取出该数的"个十百千万 ...

  4. python语言积累

    调试打印堆栈 import traceback traceback.print_exc() #打印堆栈的详细信息

  5. Github加载慢,显示不完整问题解决

    问题: 在访问Github网站的时候,可能会遇到网站响应超时,图片加载不出,排版错误等情况(大部分情况下是可以正常打开的). 解决方法: 修改 C:\Windows\System32\drivers\ ...

  6. uoj#422. 【集训队作业2018】小Z的礼物(MIn-Max容斥+插头dp)

    题面 传送门 题解 好迷-- 很明显它让我们求的是\(Max(S)\),我们用\(Min-Max\)容斥,因为\(Min(S)\)是很好求的,只要用方案数除以总方案数算出概率,再求出倒数就是期望了 然 ...

  7. 装饰器设计模式初探及Java中实际应用举例

    本篇随笔主要介绍用Java实现简单的装饰器设计模式: 先来看一下装饰器设计模式的类图:  从图中可以看到,我们可以装饰Component接口的任何实现类,而这些实现类也包括了装饰器本身,装饰器本身也可 ...

  8. Shell脚本标准

    #!/bin/bash #Usage: # ./shell.sh dbname user passwd #----------------------------------------------- ...

  9. C++基础学习9:构造函数和析构函数

    1.  构造函数用来对类对象进行初始化,它完成对内存空间的申请.赋初值等工作.  2.  析构函数主要是用来做清理工作的. 补充:函数名或变量名前面有"::"但是没有类名,说明这是 ...

  10. jupyter notebook 设置默认目录

    1.打开 cmd 输入命令 jupyter notebook --generate-config 可以看到生成文件的路径,这个就是生成的配置文件jupyter_notebook_config.py, ...