《性能测试关注点》
|
背景及目的
为了在我们在进行性能测试的时候有目标,有依据的去执行脚本,监控场景,特此对性能测试时需要的关注点进行描述排列;
一、前期准备及确定环境标准
1.1 确定环境是否是最佳状态
在进行性能测试前我们要确定服务器的 CUP 网络等 处于最佳状态;
1.12 CPU利用率确定
CPU利用率的检查:
操作系统在没有大作业工作时,CPU的user和kern一般在1%左右,而idle空闲一般在97%、98%左右。如果CPU利用率明显偏大,需等这个作业完成后才能进行性能测试,如果等不到结束,kill也是一个选择。
1.13 网络情况确定
网络相关检查:
检查网络的响应时间是否可以支撑性能测试的业务量
网络响应时间是指终端发起到源端的连接请求,到收到源端的回复所需要的时间。可用ping命令来测试网络的响应时间,Ping 命令的echo request/reply 一次往返所花费的时间即为响应时间。
若是过程中出现大延迟的数据包,甚至偶尔的丢包现象,则说明该网络抖动程度较大,网络性能不佳。
如果存在网络抖动,同样会影响系统性能。例如:
局域网中,绝大多数延时都是0-1毫秒,而中间掺杂着几十毫秒(47ms)的抖动。这类网络情况在高吞吐量的性能测试当中,会严重影响业务的响应时间(如果一个业务的链条比较长的话)。
因为,对于追求性能极致的系统,响应时间都是以毫秒计算的,一个业务才几十毫秒。
如果10个tcp网络报文中有一个遇到几十毫秒(47ms)的抖动,就会明显拉长了业务的响应时间。
1.14 内存情况的确定
需要注意以下几点:
1、如果系统报告有持续的交换空间使用,说明内存不足 ,swap device(页交换设备)总是繁忙中,那就意味着内存已经不足,需要升级了.
2、一般有这样一个经验公式:应用程序可用内存/系统物理内存>70%时,表示系统内存资源非常充足,不影响系统性能,应用程序可用内存/系统物理内 存<20%时,表示系统内存资源紧缺,需要增加系统内存,20%<应用程序可用内存/系统物理内存<70%时,表示系统内存资源基本能 满足应用需求,暂时不影响系统性能。
1.15 IO(磁盘)情况的确定
磁盘与内存紧紧相关,因此我们在进行测试前要确定磁盘的剩余物理可用率,占有率,页交换等;
二、逻辑业务层次准备
2.1 容易存在的问题
从大多数的性能测试来看,虽然测试人员自始至终对测试工作都做到了认真负责,但测试报告出炉后,大家总觉得美中不足,对测试结果都心存疑虑,尤其在那些时间跨度较长、针对不同的测试对象的性能对比测试中,或多或少都存在以下几个方面的问题:
1. 测试准备不充分,测试目标不明确,测试计划不详细;
2. <