如何评估性能指标

一、背景

做性能测试之前,最好先定义清楚性能指标。这样我们才能评估测试结果是否满足预期。最理想的情况是,开发、产品、

项目经理已经提前定义好性能指标。但是理想和现实的差距非常大。

二、性能指标评估

对应老项目、已经上线的项目:

通过业务监控的数据:

1、通过业务分布来确定性能测试的范围

2、通过各时间段业务量来确定TPS(TPS取某时间段的最大值,这样才能真实反映服务器的最大处理能力),中间会用到

二定律:指80%的业务量在20%的时间里完成。

3、并发用户数

(1).通过在线活动用户数来估算并发用户数**

平均并发用户数:C=nL / T

备注:n是平均每天访问用户数(login session的数量),L是一天内用户从登录到退出的平均时长(login session的平均

时间),T是考察时间长度(一天内多长时间有用户使用系统)

并发用户数峰值:
在这里插入图片描述
C是平均并发用户数,该公式遵循泊松分布理论。

举例,假设系统A,该系统有3000个用户,平均每天大概有400个用户要访问该系统(可以从系统日志从获得),对于

一个典型用户来说,一天之内用户从登陆到退出的平均时间为4小时,而在一天之内,用户只有在8小时之内会使用该

系统。

平均并发用户数为:C = 400*4/8 = 200

并发用户数峰值为:C‘ = 200 + 3*根号200 = 243

(2).根据经验来获取系统并发用户数

并发用户数 = 系统最大在线用户数的8%到12%

4、响应时间

(1).响应时间2-5-8原则

当用户能够在2秒以内得到响应时,会感觉系统的响应很快;

当用户在2-5秒之间得到响应时,会感觉系统的响应速度还可以;

当用户在5-8秒以内得到响应时,会感觉系统的响应速度很慢,但是还可以接受;

而当用户在超过8秒后仍然无法得到响应时,会感觉系统糟透了,或者认为系统已经失去响应,而选择离开这个Web站

点,或者发起第二次请求。

(2).通过公式:并发用户数 = TPS*(RT+Think Time),来计算响应时间

5、事务成功率:单位时间内系统可以成功完成多少个定义的事务,在一定程度上反应了系统的处理能力,一般事务成功

率要求100%

6、系统资源使用率

(1).CPU使用率:指用户进程与系统进程消耗的CPU百分比,长时间情况下,一般可接受上限不超过85%;

(2).内存利用率:内存利用率=(1-空闲内存/总内存大小)*100%,内存使用率可接受上限为85%;

(3).磁盘I/O: 磁盘主要用于存取数据,因此当说到IO操作的时候,就会存在两种相对应的操作,存数据的时候对应的是写

IO操作,取数据的时候对应的是是读IO操作,一般使用磁盘用于读写操作所占用的时间百分比度量磁盘

读写性能;如:Linux命令:iostat -d -x # -d 显示磁盘使用情况,-x 显示详细信息

%util: 一秒中有百分之多少的时间用于 I/O

如果%util接近100%,说明产生的I/O请求太多,I/O系统已经满负荷

(4).网络带宽:一般使用计数器Bytes Total/sec来度量,其表示为发送和接收字节的速率,包括帧字符在内;判断网络连

接速度是否是瓶颈,可以用该计数器的值和目前网络的带宽比较;

对于新项目、还未上线的项目:

建议:可以不要管什么性能指标,直接开始测试,测试完成后,将测试结果发送给相关人员进行评估,最终决定测试结果

是否满足系统性能要求。

你可能感兴趣的:(性能测试)