首页 > 代码库 > 性能测试结果分析
性能测试结果分析
Definitions:
?Stress
Tests the server –Peak volume over a short span of time
?Load
Tests the database –Largest load the database can handle at one time
?Volume
Tests the server & the database –Heavy volumes of data over time (combination of Stress Testing and Load Testing over time)
?Performance
Tests user response time With web applications this is normally the main consideration
?Benchmark
Compares your testing standards to the same testing standards in other similar organizations in the industry
?Baseline
Setting testing standards to be used as a starting point for comparison later within your own organization
Identify target:
Will the tool need to test:
- Bandwidth
- Multithreading
- Concurrent users
- Disk capacity
- Multiple platforms
- Faults
- Multiple browsers
- Memory
- Users per server
- User response
一:性能分析的基础知识:
1.几个重要的性能指标:相应时间、吞吐量、吞吐率、TPS(每秒钟处理的交易数)、点
击率等。
2.系统的瓶颈分为两类:网络的和服务器的。服务器瓶颈主要涉及:应用程序、WEB服务
器、数据库服务器、操作系统四个方面。
3.常规、粗略的性能分析方法:
当增大系统的压力(或增加并发用户数)时,吞吐率和TPS的变化曲线呈大体一致,则系统
基本稳定;若压力增大时,吞吐率的曲线增加到一定程度后出现变化缓慢,甚至平坦,很可能是
网络出现带宽瓶颈,同理若点击率/TPS曲线出现变化缓慢或者平坦,说明服务器开始出现颈。
4.作者提出了如下的性能分析基本原则,此原则本人十分赞同:
——由外而内、由表及里、层层深入
应用此原则,分析步骤具体可以分为以下三步:
第一步:将得到的响应时间和用户对性能的期望值比较确定是否存在瓶颈;
第二步:比较Tn(网络响应时间)和Ts(服务器响应时间)可以确定瓶颈发生在网络还是服
务器;
第三步:进一步分析,确定更细组件的响应时间,直到找出发生性能瓶颈的根本原因。
二:以WEB应用程序为例来看下具体的分析方法:
1.用户事务分析:
a.事务综述图(Transaction Summary ):以柱状图的形式表现了用户事务执行的成功与
失败。通过分析成功与失败的数据可以直接判断出系统是否运行正常。若失败的事务非常多,则
说明系统发生了瓶颈或者程序在执行过程中发生了问题。
b.事务平均响应时间分析图(Average Transaction Response Time): 该图显示在
测试场景运行期间的每一秒内事务执行所用的平均时间,还显示了测试场景运行时间内各个事务
的最大值、最小值和平均值。通过它可以分析系统的性能走向。若所有事务响应时间基本成一条
曲线,则说明系统性能基本稳定;否则如果平均事务响应时间逐渐变慢,说明性能有下降趋势,
造成性能下降的原因有可能是由于内存泄漏导致。
c.每秒通过事务数分析图(Transaction per Second即TPS):显示在场景运行的每一
秒中,每个事 务通过、失败以及停止的数量。通过它可以确定系统在任何给定时刻的实际事务
负载。若随着测试的进展,应用系统在单位时间内通过的事务数目在减少,则说明服务器出现瓶
颈。
d.每秒通过事务总数分析图(Total Transactions per Second):显示场景运行的
每一秒中,通过、失败以及停止的事务总数。若在同等压力下,曲线接近直线,则性能基本趋于
稳定;若在单位时间内通过的事务总量越来越少,即整体性能下降。原因可能是内存泄漏或者程
序中的缺陷。
e.事务性能摘要图(Transaction Performance Summary):显示方案中所有事务的
最小、最大平均执行时间,可以直接判断响应时间是否符合客户要求(重点关注事务平均、最大
执行时间)。
f.事务响应时间与负载分析图(Transaction Response Time Under load):通过
该图可以看出在任一时间点事务响应时间与用户数目的关系,从而掌握系统在用户并发方面的性
能数据。
g.事务响应时间(百分比)图(Transaction Response Time(percentile)):该
图是根据测试结果进行分析而得到的综合分析图。分析该图应从整体出发,若可能事务的最大响
应时间很长,但如果大多数事务具有可接受的响应时间,则系统的性能是符合。
h.事务响应时间分布情况图(Transaction Response Time (Distribution)):该
图显示了测试过程中不同响应时间的事务数量。若系统预先定义了相关事务可以接受的最小和最
大事务响应时间,则可以使用此图确定系统性能是否在接受范围内。
分析到这一步,只能大概判断出瓶颈可能会出在那,要具体定位瓶颈还需要更深入
的分析。没有贴图,看起来有点费劲,如果你对这些图都比较了解,应该是比较简单的.