• windows系统性能监控perfmon


    系统自带的perfmon.exe

    一、Perfmon简介、性能监控指标、性能对象指标

    Perfmon:提供了图表化的系统性能实时监视器、性能日志和警报管理,可用于监视CPU使用率、内存使用率、硬盘读写速度、网络速度等,可以很方便地使用第三方工具进行性能分析。

    1.常用的性能监控指标

    Perfmon性能监控对象总共有上百个性能指标,我们关注一个系统的性能时,不可能关注这么多指标,有些性能指标对实际的应用系统影响并不大。但对一个Windows操作系统来说,CPU、内存(Memory)、磁盘(Disk)、网络(Network)等关键对象是性能监控中必不可少的项。

    2.常用的性能对象与指标

    性能对象计数器提供的信息
    Processor % ldle Time 处理器在采样期间空闲时间的百分比
    Processor % Processor Time 指处理器用来执行非闲置线程时间的百分比。
    (CPU占用率)
    Processor % User Time 处理器处于用户模式的时间百分比
    Memory Available Bytes 显示出当前空闲的物理内存总量。
    该数值↓,说明Windows开始频繁地调用磁盘页面文件;该数值<5MB时,系统会将Available Memory Bytes的大部分时间消耗在操作页面文件上
    Memory % Committed Bytes In Use 内存使用百分比,[Compitted Bytes / Commit Limit]的比值
    Memory Page Faults/sec 指处理器处理错误页的综合速率,[错误页数/s]来计算
    Network Interface Bytes Total/sec 发送和接收字节的速率,包括帧字符在内
    Network Interface Packets/sec 发送和接收数据包的速率
    Physical Disk % Busy Time 磁盘驱动器忙于为读or写入请求提供服务所用时间的百分比。
    若该数值比较大,则硬盘有可能是瓶颈
    Physical Disk Avg. Disk Queue Length 磁盘队列的平均长度。磁盘完成对读取和写入请求的处理时间,磁盘数据吞吐量的外在表现
    Physical Disk Current Disk Queue Length 在收集操作数据时,磁盘上未完成的请求数目

    以上的4个指标比较关键:
    % Processor Time
    % Committed Bytes In Use
    Bytes Total/sec
    % Busy Time

    二、Perfmon的启用和监控设置

    Perfmon 使用方法:

    1.开始输入perfmon后回车,即可打开perfmon.exe

     

    2.在perfmon.exe的左窗格中,单击【系统监视器】


     

    3.在右窗格中单击右键,然后单击【添加计数器】


     

    or 点击监控图上方的【+】也可以打开添加计数器的窗口


     

    4.在“性能对象”列表中,选择所需的性能指标计数器类别,以在Perfmon.exe中显示对应指标的监控图形,然后单击【添加】-->【确认】


     

    在计数器勾选区域:
    选中监控图底部的某个计数器,右键【属性】,可编辑该计数器的线条颜色、宽度等样式


     

    通过切换点击不同的计数器类别,可实时观察到所统计的【最新值、平均值、最小值、最大值、持续时间】


     

    在监控图区域:
    右键【属性】,可设置采样的持续时间(默认100s)、每间隔多少时间采样一次
    右键【图形另存为】,可将本地性能监控的采样图保存到本地
    右键【清除】,可将当前监控上的采样图清除,而后从左至右继续开始新的采样图


     
    暂停采样/继续采样

    三、性能分析方法

    1.内存分析方法

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

    内存分析的主要方法和步骤:
    (1)首先查看Memory:% Commitued Bytes in Use指标
    如果该指标数值比较大,系统可能出现了内存方面的问题,需要继续下面步骤进一步分析。
    另外也可以查看Available Bytes,如果该值小,则说明可用内存不足,存在性能瓶颈。
    (2)注意Pages/secPages Read/secPage Faults/sec的值
    操作系统会利用磁盘较好的方式提高系统可用内存量or提高内存的使用效率,这三个指标直接反应了操作系统进行磁盘交换的频度。
    Pages/sec值持续高于几百,可能有内存问题;Pages/sec值不一定大就表明有内存问题,可能是运行使用内存映射文件的程序所致。
    Page Faults/sec说明每秒发生页面失效次数,页面失效次数越多,说明操作系统向内存读取的次数越多。此时需要查看Pages Read/sec的计数值,该计数器的阀值为5,如果计数值>5,则可以判断存在内存方面的问题。

    2.处理器分析法

    (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:%Process Time 计数器的值并不一定很大,此时就必须查找处理器阻塞的原因。

    3.磁盘I/O分析方法

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

    4.网络分析方法

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

  • 相关阅读:
    monogobd 查询语句
    node express 使用中间件multer实现文件上传
    express+monogodb+前台react JSX模板引擎相关配置(非webapck)服务端渲染
    uniapp项目实战 新闻类app
    react+express项目创建JSX模板方式
    express+monogodb实现增删改查
    uniapp 云函数批量导出功能实现及api方法封装
    uniapp自定义顶部搜索框兼容微信小程序
    MySQL-OnlineDDL在线DDL
    子查询优化
  • 原文地址:https://www.cnblogs.com/seamy/p/15649506.html
Copyright © 2020-2023  润新知