• 【转】性能测试计数器分析指南


     

     原文出处:UML软件工程组织

     

    1 Windows性能计数器分析

    对象

    计数器

    分析

    processor

    %precessor time

    建议阈值85%

    memory

    Available bytes

    建议阈值少于4MB需要添加内存;

    另外,又建议至少要有10%的物理内存值

    Pages reads/sec

    Page Reads/sec 是指为解析硬页错误而读取磁盘的次数,如果该值一直持续较大,表明可能内存不足

    建议阈值30(5?),大数值表示磁盘读而不是缓存读

    Pages writes/sec

    Page Writes/sec 是指为了释放物理内存空间而将页写入磁盘的次数

    Pages Input/sec

    Pages Input/sec 指为解决页错误从磁盘上读取的页数

    Pages Output/sec

    Pages Output/sec 是指为了释放物理内存空间而写入磁盘的页数

    如果该值远远大于Pages Input/sec,可能有内存泄露

    Pages/sec

    Pages/sec 是指为解析硬页错误从磁盘读取或写入磁盘的页数

    建议阈值20

    Network interface

    (对于TCP/IP)

    Bytes received/sec

    该数据结合Bytes total/sec看

    Bytes sent/sec

    该数据结合Bytes total/sec看

    Bytes total/sec

    推荐不要超过带宽的50%

    Packets/sec

    根据实际数据量大小,无建议阈值,该数据结合Bytes total/sec看

    physicaldisk

    Disk reads/sec

    取决于硬盘制造商的规格,检查磁盘的指定传送速度,以验证此速度没有超出规格

    Disk writes/sec

    取决于硬盘制造商的规格,检查磁盘的指定传送速度,以验证此速度没有超出规格

    又:上两值相加,应小于磁盘设备的最大容量

    %Disk Time

    建议阈值90%

    Current disk queue length

    Avg. disk queue length(如果使用RAID设备,%Disk Time计数器显示的值可以大于100%。如果大于100%,则使用Avg. disk queue length计数器决定正在等待磁盘访问的系统请求的平均数)

    不超过磁盘数的1.5~2倍

    如果上两值始终较高,可以考虑升级磁盘驱动器或将某些文件移动到其他磁盘或服务器

    2 一些注意事项

    1. 如果监视不超过4个小时,则每15秒更新一次比较合理;如果将监视系统8个小时或更长时间,则设置的间隔不要小于300秒

    2. 个人认为测试报告结果同时还要附上图参考,因为单靠最小、最大和平均值还不能说明问题

    3. 与物理磁盘计数器的数据不同,逻辑磁盘计数器的数据默认情况下不是由操作系统搜集。要获得逻辑驱动器或存储卷的性能计数器数据,必须在命令提示符下键入diskperf –yv。默认情况下,操作系统使用diskperf –yd命令包含物理驱动器数据。使用命令diskperf的详细信息,请在命令提示符下键入diskperf -?。

    4. 通常,决定性能是否可以接受是一种主观判断,随用户环境的变化而明显地变化。

    5. 内存不足是计算机系统中的严重性能问题最常见的原因。工作站响应速度很慢最有可能是内存和处理器问题造成的;服务器更容易受到磁盘和网络问题的影响。

    6. 在程序启动时,每个程序的Process\%Processor Time值迅速攀升、降低,然后稳定。注意程序启动时处理器的峰值非常重要;你可能要暂时忽略监视数据中高的启动值,以获得典型程序使用处理器情况的更精确的图片。

    7. 当内存减少时,操作系统开始通过从活动较少的程序的工作集(working set)中获得内存来补充,因此,将看到一个程序工作集的增大,而其他程序的值减少。如果系统中没有足够的内存来满足所有活动程序的要求,将发生内存页交换,程序性能将受到影响。

    8. 如果发生了内存泄漏,ProcessPrivate Bytes计数器和ProcessWorking set 计数器的值往往会升高,同时Available bytes会降低。

    9. 如果Process不见了,修改注册表HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesPerfProcPerformance 下的Disable Performance Counters值为0.

    3 Unix性能计数器分析

    计数器

    描述

    Average load

    Ready状态并发进程的平均数

    Collision rate

    在以太网上侦察到的每秒冲突数

    Context switches rate

    每秒进程或线程之间的切换数

    CPU utilization

    CPU使用时间的百分比

    Disk rate

    磁盘传输的速率

    Incoming packets error rate

    接受以太网包每秒的错误

    Incoming packets rate

    每秒接受的以太网包

    Interrupt rate

    每秒设备的中断次数

    Outgoing packets error rate

    发送以太网包每秒的错误

    Outgoing packets rate

    每秒发送以太网包

    Page in rate

    每秒读到物理内存的页数

    Page out rate

    每秒写到页面文件和从物理内存移动的页数

    Paging rate

    每秒读到物理内存或者写到页面文件的页数

    Swap in rate

    交换的进程数

    Swap out rate

    交换的进程数

    System mode CPU utilization

    系统模式下CPU使用时间的百分比

    User mode CPU utilization

    用户模式下CPU使用时间的百分比

    4 SQL Server性能计数器分析

    计数器

    描述

    Buffer manager/buffer cache hit ratio

    指可在缓冲池中找到而不需要从磁盘中读取(物理I/O)的页面的百分比。如果该值较低则可能存在内存不足或不正确的索引

    General statistics object/user conections

    指系统中活动的SQL连接数。该计数器的信息可以用于确定系统得最大并发用户数

    Locks/lock requests/sec

    指每秒请求的锁个数。通过优化查询来减少读取次数,可以减少该计数器的值。

    Locks/lock timeouts/sec

    指每秒由于等待对锁的授权的锁请求数,理想情况下,该计数器的值为0

    Locks/lock waits/sec

    指每秒无法立刻得到授权而超时的锁请求数,理想情况下,该计数器的值应该尽可能为0

    Locks/number of deadlocks/sec

    指每秒导致死锁的锁请求数。死锁对于应用程序的可伸缩性非常有害,并且会导致恶劣的用户体验。该计数器必须为0

    Memory manager/memory grants pending

    指每秒等待工作空间内存授权的进程数。该计数器应该尽可能接近0,否则预示可能存在着内存瓶颈

    SQL statistics/batch requests/sec

    指每秒向服务器提交批的请求次数。该计数器被用来确定系统的负载大小

    SQL statistics/ SQL compilations/sec

    指每秒编译数。理想状态下该计数器的值应该低,如果batch requests/sec计数器的值非常接近该计数器,那么可能存在大量的特殊SQL调用

    SQL statistics/ re- compilations/sec

    指每秒的重新编译数。该计数器的值越低越好。存储过程在理想情况下应该只编译一次,然后被他们的执行计划重复利用。如果该计数器的值较高,或许需要换个方式编写存储过程,从而减少重编译的次数

     

  • 相关阅读:
    解决:设置中打开蓝牙,测试机不会自动搜索设备
    深入学习:Windows下Git入门教程(下)
    深入学习:Windows下Git入门教程(上)
    深入分析:控制系统的音量
    深入分析:Android中app之间的交互(一,使用Action)
    深入分析:Fragment与Activity交互的几种方式(三,使用接口)
    深入分析:Fragment与Activity交互的几种方式(二,使用Bundle)
    深入分析:Fragment与Activity交互的几种方式(一,使用Handler)
    实现:TextView自由复制功能
    小结1
  • 原文地址:https://www.cnblogs.com/keepSmile/p/10158520.html
Copyright © 2020-2023  润新知