性能测试计数器分析指南

原文出处: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. 如果发生了内存泄漏,Process\Private Bytes计数器和Process\Working set 计数器的值往往会升高,同时Available bytes会降低。

9. 如果Process不见了,修改注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PerfProc\Performance 下的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


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

原创:UML软件工程组织

时间: 2024-10-18 11:10:28

性能测试计数器分析指南的相关文章

LoadRunner性能测试结果分析

性能测试的需求指标:本次测试的要求是验证在30分钟内完成2000次用户登录系统,然后进行考勤业务,最后退出,在业务操作过程中页面的响应时间不超过3秒,并且服务器的CPU使用率.内存使用率分别不超过75%.70% LoadRunner性能测试结果分析内容: 1.结果摘要 LoadRunner进行场景测试结果收集后,首先显示的该结果的一个摘要信息,如图1- 2所示.概要中列出了场景执行情况.“Statistics Summary(统计信息摘要)”.“Transaction Summary(事务摘要)

Greenplum 简单性能测试与分析

如今,多样的交易模式以及大众消费观念的改变使得数据库应用领域不断扩大,现代的大型分布式应用系统的数据膨胀也对数据库的海量数据处理能力和并行处理能力提出了更高的要求,如何在数据呈现海量扩张的同时提高处理速度和应用系统的可用性,使客户能同时得到更高的处理速度.更高的数据可用性和更大的数据集,是数据库系统面临的一个挑战. 通过TPC-H基准测试,可获得数据库单位时间内的性能处理能力,为评估数据库系统的现有性能服务水平提供有效依据,通过横向对比促进数据库系统的整体质量提升,能更好地在重大信息化工程中实现

Python性能分析指南(未完成)

英文原文:http://www.huyng.com/posts/python-performance-analysis/ 译文:http://www.oschina.net/translate/python-performance-analysis 虽然你所写的每个Python程序并不总是需要严密的性能分析,但是当这样的问题出现时,如果能知道Python生态系统中的许多种工具,这样总是可以让人安心的. 分析一个程序的性能可以归结为回答4个基本的问题: 1.它运行的有多块? 2.那里是速度的瓶颈?

某系统单点登录性能测试诊断分析优化过程

某系统单点登录性能测试诊断分析优化过程 原因说明 下面描述的是前段时间协助本地一家上市IT公司做产品技术选型时对他们的技术框架进行性能测试与优化过程记录,因测试过程中涉及数据库选型和各类问题的监控分析优化,篇幅比较大,本次主要是描述在同样基础软硬件下.同样应用工程包和框架.同样数据量下,针对MYSQL环境下进行单点登录压力测试的结果过程记录. 初始环境配置 测试内容 1.            用户登录,首页查看,退出 2.  某业务交易新增.查询.删除.上传文件 3.  业务审批流程创建.提交

分享《Python地理空间分析指南(第2版)》中文PDF+英文PDF+源代码

下载:https://pan.baidu.com/s/1PkoFDSnp0qadqFzXdSW7VA更多资料:http://blog.51cto.com/14050756 分享<Python地理空间分析指南(第2版)>中文PDF+英文PDF+源代码中文PDF,289页,带书签目录,文字可以复制粘贴.英文PDF,394页,带书签目录,文字可以复制粘贴.中英文两版对比学习. 配套源代码. 其中中文版如图: 原文地址:http://blog.51cto.com/14050756/2327341

性能测试结果分析

转自网络 性能测试工程师基本上都能够掌握利用测试工具来作负载.压力测试,但多数人对怎样去分析工具收集到的测试结果感到无从下手,下面我就把个人工作中的体会和收集到的有关资料整理出来,希望能对大家分析测试结果有所帮助. 分析原则: 1. 具体问题具体分析(这是由于不同的应用系统,不同的测试目的,不同的性能关注点) 2. 查找瓶颈时按以下顺序,由易到难. 服务器硬件瓶颈-〉网络瓶颈(对局域网,可以不考虑)-〉服务器操作系统瓶颈(参数配置)-〉中间件瓶颈(参数配置,数据库,web服务器等)-〉应用瓶颈(

性能测试—瓶颈分析方法

1.内存分析方法 内存分析用于判断系统有无内存瓶颈,是否需要通过增加内存等手段提高系统性能表现. 内存分析需要使用的计数器:Memory类别和Physical Disk类别的计数器.内存分析的主要方法和步骤: (1)首先查看Memory\Available Mbytes指标 如果该指标的数据比较小,系统可能出现了内存方面的问题,需要继续下面步骤进一步分析. 注: 在UNIX/LINUX中,对应指标是FREE(KB) (2)注意Pages/sec.Pages Read/sec和Page Fault

Python性能分析指南

http://www.admin10000.com/document/2861.html 尽管并非每个你写的Python程序都需要严格的性能分析,但了解一下Python的生态系统中很多优秀的在你需要做性能分析的时候可以使用的工具仍然是一件值得去做的事. 分析一个程序的性能,最终都归结为回答4个基本的问题: 程序运行速度有多快? 运行速度瓶颈在哪儿? 程序使用了多少内存? 内存泄露发生在哪里? 下面,我们将使用一些优秀的工具深入回答这些问题. 使用time工具粗糙定时 首先,我们可以使用快速然而粗

《性能测试诊断分析与优化》学习总结(一)

我始终坚信,一本好书,可以改变人的一生,成功一定有方法,失败一定有原因,而我个人认为,失败的最大原因是学习不够.不断学习,活到老,学到老. 作为软件测试人员来说,或多或少都会对性能测试有点感兴趣,我个人认为,软件性能与软件功能的最大兴趣在于从用户体检的角度,感受软件的质量度量,如响应时间.准确性.成功率等. 性能测试的目标是通过制定性能测试策略.性能测试计划.执行性能测试,并对性能问题进行定位分析和优化.影响软件系统的性能主要因素包括:硬件设施.网络.操作系统.并发用户数.数据库数据量.中间件等