性能测试总结报告详解.docx
- 文档编号:30624436
- 上传时间:2023-08-18
- 格式:DOCX
- 页数:32
- 大小:290.75KB
性能测试总结报告详解.docx
《性能测试总结报告详解.docx》由会员分享,可在线阅读,更多相关《性能测试总结报告详解.docx(32页珍藏版)》请在冰豆网上搜索。
性能测试总结报告详解
性能测试总结报告
版本修改记录
版本标识
编写人
日期
备注
1.性能测试简介
1.1性能测试目的
真实环境下检测系统性能,评估系统性能以及服务器性能的满足情况;预见系统负载压力承受力,在应用实际部署之前,评估系统性能;分析系统瓶颈,优化系统。
本测试主要关心的系统测试指标为:
●事务摘要(事务通过率)
●平均响应时间
●吞吐量
●每秒点击次数
●WEB服务器的性能(CPU利用率、磁盘、内存、网卡)
●SQL服务器的性能()
1.2术语解释
Ø响应时间
响应时间指的是客户端发出请求到得到响应的整个过程所经历的时间。
Ø吞吐量
是指单位时间内流经被测系统的数据流量,一般单位为b/s,即每秒钟流经的字节数。
吞吐量是指单位时间内系统处理的客户请求的数量,直接体现软件系统的性能承载能力。
Ø并发
指在某一给定时间内,某个特定点上进行会话操作的用户数。
是陆陆续续交替执行的。
特殊的并发---并行:
用户同时运行的,操作步骤相同。
在测试中通过设置集合点来完成
Ø每秒点击次数
负载测试期间每秒内Vuser在WEB服务器上点击的次数。
通过点击次数可以估算出Vuser生成的负载数。
Ø负载测试
通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足系统的性能指标情况下,系统所能够承受的最大负载量的测试。
Ø压力测试
通常是指持续不断的给被测系统增加压力,直到将被测系统压垮为止,用来测试系统所能承受的最大压力。
压力测试是为了发现在什么条件下应用程序的性能会变得不可接受。
1.3测试方向
性能测试常见的测试方向为:
●登录测试
●查询测试(万条数据查询)
2.测试环境
2.1服务器端测试环境描述
硬件环境:
机器型号
配置信息
数量
备注
自配机器
●Intel(R)Core(TM)ii3-4170CPU3.7GHz
●内存:
4.0GB;
●500GB硬盘*1
●网卡:
100M
1台
用于数据库服务器和WEB应用服务器
软件环境:
数据库服务器
操作系统:
WindowsServerXPSP3
数据库:
SqlServer2005
应用服务器:
ApacheTomcat7.0
浏览器:
Internetexplorer6.0以上版本
JDK
JDK1.7
2.2客户端测试环境描述
硬件环境:
机器型号
配置信息
数量
备注
台式机
●Intel(R)Core(TM)i3-4170CPU3.7GHz
●内存:
4.0GB;
●500GB硬盘*1
●网卡:
100M
1台
软件环境:
操作系统:
Windowsxpsp3
浏览器:
IE6.0
备注:
负载压力测试工具LoadRunner11
2.3测试网络环境
局域网
服务器和测试机器公用1台机器
2.4测试工具
LoadRunner11
3.测试内容概要
3.1天控性能登录脚本设置
1.访问http:
//192.168.0.222:
8080/skysafe,
2.输入用户名:
baomi密码:
000000,
3.点击“登录”按钮
3.2人员项目查询脚本设置
进入保密系统
1.访问http:
//192.168.0.222:
8080/skysafe,
2.输入用户名:
baomi密码:
000000,
3.点击“登录”按钮)
录制脚本
1.4.进入人员系统-台帐查询-涉密人员台帐-查询
3.3运行场景设置
场景一:
1.初始化:
50个用户、100个用户、150个用户;
2.启动Vuser:
每秒启动1个用户;
3.持续时间:
运行5分钟;
4.停止Vuser:
每秒停止1个用户;
3.4关键资源不处于阻塞状态
✧cpu
%ProcessorTime(Processor_Total)最大值持续超过90%平均超过50%=>cpu的瓶颈
✧磁盘
pagereads/sec(memory)持续较低
%Disktime(PhysicalDisk_total)Avg.DiskQueueLength值较高=>磁盘瓶颈
✧内存
Age.DiskQueueLength增加的同时pagereads/sec并未降低=>内存瓶颈
✧网卡
%DPCTime持续大约50%+CPU也很高=>网卡瓶颈(暂不考虑)
✧平均事务响应时间
可以接受的事务响应时间为12秒
4.登录测试过程分析
4.1事务成功率统计分析
测试结果概要列表
运行Vuser的最大数目:
50
100
150
事务摘要
通过总数:
2145
5135
7420
失败总数:
0
0
1231
停止总数
2
10
5
事务成功率(%)
99.9%
99.8%
86%
通过事务成功率分布图
【注】图片中横坐标第1行代表虚拟用户人数单位(人),第2行代表事务成功率(%),事务成功率百分比。
事务成功率结果分析
通过事务数越多说明系统的处理能力越强,失败事务数越少,说明系统越可靠,从分布图中可以看出随着并发用户的增加,事务的成功率呈现既有上升又有下降的趋势,我们发现随着人数增多事务的通过率在逐渐下降,系统的处理能力明显下降。
当并发人数达到100人数时事务的成功率还在99%以上,但是达到150人下降到86%,所以判断100人是适合系统并发的登录人数。
4.2平均数响应时间
测试结果概要列表
虚拟用户数
50
100
150
平均事务响应时间(次/秒)
0.047
0.063
0.073
平均响应时间分布图
【注】图片中横坐标第1行代表虚拟用户人数单位(人),第2行代表平均事务响应时间(秒),纵坐标代表时间单位(秒)。
平均响应时间结果分析
平均响应时间越小说明处理的速度越快,根据图片中曲线的走势可以看出,随虚拟用户数量的增加,平均事务响应时间呈现增长趋势。
说明负载测试期间虚拟用户越多,平均响应时间越长,系统处理事务的速度越慢即系统的整体性能下降。
从图表和分析可以得出150个虚拟用户同时在线时,平均响应时间小于1秒,所以150个虚拟用户同时在线时被认为是系统处理事务响应时间可接受范围内。
4.3每秒点击次数分析
测试结果概要列表
虚拟用户数
50
100
150
平均每秒点击次数
221
404
478
平均每秒点击次数分布图
【注】图片中横坐标第1行代表虚拟用户人数单位(人),第2行代表平均每秒点击次数(个/秒),纵坐标代表点击个数(个)。
平均每秒点击次数结果分析
通过对“每秒点击次数”进行分析可评估虚拟用户产生的负载量,如将其和“平均事务响应时间”图比较,可以查看点击次数对事务性能产生的影响。
通过对查看“每秒点击次数”,可以判断系统是否稳定。
系统点击率下降通常表明服务器的响应速度在变慢,需进一步分析,发现系统瓶颈所在。
从对上述场景的分析可以看出,通过互联网进行负载测试,数据波动较小,系统的处理能力正常。
4.4吞吐量
测试结果概要列表
虚拟用户数
50
100
150
平均每秒点击次数
6177345
8428968
9956119
平均吞吐量分布图
【注】图片中横坐标第1行代表虚拟用户人数单位(人),第2行代表吞吐量平均值单位(字节/秒),纵坐标代表字节数。
平均吞吐量结果分析
此吞吐量为负载测试期间Web服务器上的吞吐量(字节)。
吞吐量表示在任何指定秒内Vuser从服务器接收到的数据量。
此图可估计Vuser生成的负载量(服务器吞吐量)。
根据平均吞吐量图表整体趋向所知,在相同运行时间内,随着虚拟人数设定的增多,吞吐量的平均值成上升趋势,根据参考资料得出,如果在其它条件不变下用户增加吞吐量从一开始上升但是到达一定的增量后吞吐量不增加,那么就说明系统的处理能力在峰值处到达了极限,但是有图中所示并没有出现下降趋势,所以150人并发在接受的范围内,整体性能保持相对稳。
4.5Window资源
对象
度量
描述
测量值
系统
ProcessorQueue
Length(处理器队列
长度)
以线程为单位的处理器队列瞬时长度。
除非同时还监控线程计数器,否则此计数器始终为0。
所有处理器使用一个队列,线程在此队列中等待处理器周期。
此长度
不包括当前正在执行的线程。
处理器队列长度持续大于2通常表示发生处理器拥塞。
这是一个瞬时计数,而不是一段时间间隔内的平均值。
1
CPU
%ProcessorTime
(Windows2000)
(处理器时间百分比,
它测量处理器用于执行非空闲线程的已用时间百分比。
最大值持续超过90%平均超过50%,则表明处理器性能不足,可能需要为服务器配备速度更快的处理器。
13.8
内存
Pages/sec
Pages/sec是指为解决引用时不在内存中的页面的内存引用问题,从磁盘读取的或写入磁盘的页面数。
这是PagesInput/sec和PagesOutput/sec的和。
此计数器中包括代表系统高速缓存访问应用程序文件数据的分页流量。
此值还包括传递到/来自非高速缓存映射内存文件的页数。
如果您关心内存压力过大问题(即系统失效)和可能产生的过多分页,则这是值得考虑的主要计数器。
16.3
Pagesrades/sec
(页数/秒)
为解析内存对页面(引用时不在内存中)的引用而从磁盘读取或写入磁盘的页面数。
该值是每秒页面输入数和每秒页面输出数之和。
此计数器包含代表系统高速
缓存访问应用程序文件数据的页面流量。
该值还包含存入/取自非缓存映射内存文件的页面数。
如果您担心内存压力过大(即系统崩溃),可能导致过多分页,就可以观察这个主要计数器。
0.2
物理磁盘
%DiskTime(磁盘时间百分比)
所选磁盘驱动器忙于处理读取或写入请求所用的时间百分比。
持续大约50%+CPU也很高会造成磁盘瓶颈
2.838
✧CPU%ProcessorTime:
最大值瞬间为13.5,其他时间都低于50%,平均值为5.5,
因此可以判断处理器速度较快
✧网络磁盘%DiskTime:
最大值瞬间值为4.9,其他时间持续偏低平均值为0.7;pagereads/sec(memory)平均值30持续较低;Avg.DiskQueueLength平均值0.049持续较低,结合3者的数据可以判断物理磁盘正常
✧内存Age.DiskQueueLength变化趋势呈现平滑趋势,pagereads/sec变化趋势呈现平滑趋势,判断内存足够。
结论:
服务器性能稳定
4.6Sqlserver2005
名称
描述
范围
测量值
全表扫描/秒
FullScans/sec
指每秒全表扫描的数量。
全表扫描可以是基本表扫描或全索引扫描。
由于全表扫描需要耗费大量时间,因此全表扫描的频率过高的话,会影响性能。
如果该指标的值比1或2高,应该分析设计的查询以确定是否确实需要全表扫描,以及SQL查询是否可以被优化。
20.4
缓冲区高速缓存命中率
BufferCache
HitRatio%
指在缓冲区高速缓存中找到而不需要从磁盘中读取的页的百分比。
该比率是缓存命中总次数与缓存查找总次数之比。
经过很长时间后,该比率的变化很小。
由于从缓存中读取数据比从磁盘中读取数据的开销小得多,一般希望该比率高一些。
该指标的值最好为90%或更高。
通常可以通过增加SQLServer可用的内存数量来提高该指标的值。
增加内存直到这指标的值持续高于90%,表示90%以上的数据请求可以从数据缓冲区中获得所需数据。
99.8%
惰性写/秒
LazyWrites/sec
指每秒被缓冲区管理器的惰性编写器写入的缓冲区数。
惰性编写器是一个系统进程,用
于成批刷新脏的老化的缓冲区(包含更改的缓冲区,必须将这些更改写回磁盘,才能将缓冲区重用于其他页),并使它们可用于用
户进程。
该指标的值最好为0。
0
高速缓存命中率CacheHitRatio%
指高速缓存命中次数和查找次数的比率。
在SQLServer中,Cache包括LogCache,BufferCache以及ProcedureCache,该指标是指所有Cache的命中率,是一个总体的比率。
该指标的值越高越好。
如果该指标的值持续低于80%,就需要增加更多的内存。
99.8
平均闩等待时间(毫秒)
AverageLatch
WaitTime(ms)
指一个SQLServer线程必须等待一个闩的平均时间。
如果该指标的值很高,则系统可能正经历严重的资源竞争问题。
0
死锁的数量/秒
NumberofDeadlocks/sec
指每秒导致死锁的锁请求数。
锁加在SQLServer资源上(如在一个事务中进行的行读取或修改),以防止多个事务并发使用资源。
应尽可能少使用锁以提高事务的并发性,从而改善性能。
0
✧FullScans/sec(全表扫描/秒):
该数据的测量值为0,在标准范围内,因此SQL查询不需要优化。
✧BufferCacheHitRatio%(缓冲区高速缓存命中率):
该数据的平均值为99.8,在标准范围内,因此不需要增加SQL服务器的内存值。
✧LazyWrites/sec(惰性写/秒):
该数据的测量值为0,是理想值。
✧AverageLatchWaitTime(ms)(平均闩等待时间):
该数据的测量值为0,在标准范围内,因此SQL查询不需要优化。
✧CacheHitRatio%(高速缓存命中率):
该数据的测量值为99.8,符合标准范围,
✧NumberofDeadlocks/sec(死锁的数量/秒)数据的测量值为0,在标准范围内,因此SQL查询不需要优化。
5.登录分析结果
通过对并发登录功能的性能测试中几个主要数据的分析可知,150人并发时平均事务响应时间、吞吐量、每秒点击次数在理想范围内,但是事务通过的成功率是86%不在理想范围90%以内。
因此如果从成功率方面考虑,最优的并发人数在100-150人之间。
通过对服务器性能分析内存4G,硬盘500G的服务器满足性能需要。
6.查询测试过程分析
6.1事务成功率统计分析
测试结果概要列表
运行Vuser的最大数目:
50
100
150
事务摘要
通过总数:
2905
6184
7935
失败总数:
0
498
3305
停止总数
0
5
5
事务成功率(%)
100%
93%
71%
通过事务成功率分布图
【注】图片中横坐标第1行代表虚拟用户人数单位(人),第2行代表事务成功率(%),事务成功率百分比。
事务成功率结果分析
通过事务数越多说明系统的处理能力越强,失败事务数越少,说明系统越可靠,从分布图中可以看出随着并发用户的增加,事务的成功率呈现下降的趋势,我们发现随着人数增多事务的通过率在逐渐下降,系统的处理能力明显下降。
当并发人数达到100人数时事务的成功率还在90%以上,但是达到150人下降到70%,所以判断100人是适合系统并发的查询人数。
6.2平均数响应时间
测试结果概要列表
虚拟用户数
50
100
150
平均事务响应时间(次/秒)
0.04
0.06
0.07
平均响应时间分布图
【注】图片中横坐标第1行代表虚拟用户人数单位(人),第2行代表平均事务响应时间(秒),纵坐标代表时间单位(秒)。
平均响应时间结果分析
平均响应时间越小说明处理的速度越快,根据图片中曲线的走势可以看出,随虚拟用户数量的增加,平均事务响应时间呈现增长趋势。
说明负载测试期间虚拟用户越多,平均响应时间越长,系统处理事务的速度越慢即系统的整体性能下降。
从图表和分析可以得出随着虚拟人数的增加,,平均响应时间逐渐增大,,满足接受范围12秒,所以认为100-150人同时在线时被认为是系统处理事务响应时间可接受范围内。
6.3每秒点击次数分析
测试结果概要列表
虚拟用户数
50
100
150
平均每秒点击次数
152
256
264
平均每秒点击次数分布图
【注】图片中横坐标第1行代表虚拟用户人数单位(人),第2行代表平均每秒点击次数(个/秒),纵坐标代表点击个数(个)。
平均每秒点击次数结果分析
通过对“每秒点击次数”进行分析可评估虚拟用户产生的负载量,如将其和“平均事务响应时间”图比较,可以查看点击次数对事务性能产生的影响。
通过对查看“每秒点击次数”,可以判断系统是否稳定。
系统点击率下降通常表明服务器的响应速度在变慢,需进一步分析,发现系统瓶颈所在。
从对上述场景的分析可以看出图中曲线是100-150人时曲线是上升状态,所以判断100人内时系统的处理能力正常。
6.4吞吐量
测试结果概要列表
虚拟用户数
50
100
150
平均每秒点击次数
4822856
8062624
8215074
平均吞吐量分布图
【注】图片中横坐标第1行代表虚拟用户人数单位(人),第2行代表吞吐量平均值单位(字节/秒),纵坐标代表字节数。
平均吞吐量结果分析
此吞吐量为负载测试期间Web服务器上的吞吐量(字节)。
吞吐量表示在任何指定秒内Vuser从服务器接收到的数据量。
此图可估计Vuser生成的负载量(服务器吞吐量)。
根据平均吞吐量图表整体趋向所知,在相同运行时间内,随着虚拟人数设定的增多,吞吐量的平均值成上升趋势,根据参考资料得出,如果在其它条件不变下用户增加吞吐量从一开始上升但是到达一定的增量后吞吐量不增加,那么就说明系统的处理能力在峰值处到达了极限,但是有图中所示并没有出现下降趋势,所以100人并发在接受的范围内,整体性能保持相对稳。
6.5Window资源
对象
度量
描述
测量值
系统
ProcessorQueue
Length(处理器队列
长度)
以线程为单位的处理器队列瞬时长度。
除非同时还监控线程计数器,否则此计数器始终为0。
所有处理器使用一个队列,线程在此队列中等待处理器周期。
此长度
不包括当前正在执行的线程。
处理器队列长度持续大于2通常表示发生处理器拥塞。
这是一个瞬时计数,而不是一段时间间隔内的平均值。
11.8
CPU
%ProcessorTime
(Windows2000)
(处理器时间百分比)
它测量处理器用于执行非空闲线程的已用时间百分比。
最大值持续超过90%平均超过50%,则表明处理器性能不足,可能需要为服务器配备速度更快的处理器。
90.6
内存
PageFaults/sec
(页面错误数/秒)
这是处理器中页面错误的计数。
当进程引用不在主内存中工作集内的虚拟内存页时,会发生页面错误。
如果页面在备用表中(即已经在主内存中)或者正被共享该页的其他进程使用,则页面错误不会导致从磁盘提取该页面。
Pagesrades/sec
(页数/秒)
为解析内存对页面(引用时不在内存中)的引用而从磁盘读取或写入磁盘的页面数。
该值是每秒页面输入数和每秒页面输出数之和。
此计数器包含代表系统高速
缓存访问应用程序文件数据的页面流量。
该值还包含存入/取自非缓存映射内存文件的页面数。
如果您担心内存压力过大(即系统崩溃),可能导致过多分页,就可以观察这个主要计数器。
0.5
物理磁盘
%DiskTime(磁盘时间百分比)
所选磁盘驱动器忙于处理读取或写入请求所用的时间百分比。
持续大约50%+CPU也很高会造成磁盘瓶颈
0.4
✧CPU%ProcessorTime:
最大值瞬间为17%,其他时间大多低于50%,平均值为7.9,因此可以判断处理器正常
✧网络磁盘%DiskTime:
最大值瞬间值为10,其他时间持续偏低平均值为0.76;pagereads/sec(memory)平均值0.41持续较低;Avg.DiskQueueLength平均值0.008持续较低,结合3者的数据可以判断物理磁盘正常
✧内存Age.DiskQueueLength变化趋势在1分钟之前大幅度增减,然后呈现平滑趋势,Age.DiskQueueLength变化趋势也是在1分钟之前大幅度增减,然后呈平滑趋势,与pagereads/sec变化保持增减一致,结合2者的数据应趋势判断内存正常
6.6Sqlserver2005
名称
描述
范围
测量值
全表扫描/秒
FullScans/sec
指每秒全表扫描的数量。
全表扫描可以是基本表扫描或全索引扫描。
由于全表扫描需要耗费大量时间,因此全表扫描的频率过高的话,会影响性能。
如果该指标的值比1或2高,应该分析设计的查询以确定是否确实需要全表扫描,以及SQL查询是否可以被优化。
34
缓冲区高速缓存命中率
BufferCache
HitRatio%
指在缓冲区高速缓存中找到而不需要从磁盘中读取的页的百分比。
该比率是缓存命中总次数与缓存查找总次数之比。
经过很长时间后,该比率的变化很小。
由于从缓存中读取数据比从磁盘中读取数据的开销小得多,一般希望该比率高一些。
该指标的值最好为90%或更高。
通常可以通过增加SQLServer可用的内存数量来提高该指标的值。
增加内存直到这指标的值持续高于90%,表示90%以上的数据请求可以从数据缓冲区中获得所需数据。
99.8%
惰性写/秒
LazyWrites/sec
指每秒被缓冲区管理器的惰性编写器写入的缓冲区数。
惰性编写器是一个系统进程,用
于成批刷新脏的老化的缓冲区(包含更改的缓冲区,必须将这些更改写回磁盘,才能将缓冲区重用于其他页),并使它们可用于用
户进程。
该指标的值最好为0。
0
高速缓存命中率CacheHitRatio%
指高速缓存命中次数和查找次数的比率。
在SQLServer中,Cache包括LogCache,BufferCache以及ProcedureCache,该指标是指所有Cache的命中率,是一个总体的比率。
该指标的值越高越好。
如果该指标的值持续低于80%,就需要增加更多的内存。
99.9
平均闩等待时间(毫秒)
AverageLatch
WaitTime(ms)
指一个SQLServer线程必须等待一个闩的平均时间。
如果该指标的值很高,则系统可能正经历严重的资源竞争问题。
0
死锁的数量/秒
NumberofDeadlocks/sec
指每秒导致死锁的锁请求数。
锁加在SQLServer资源上(如在一个事务中进行的行读取或修改),以防止多个事务并发使用资源。
应尽可能少使用锁以提高事务的并发性,从而改善性能。
0
✧FullScans/sec(全表扫描/秒):
该数据的测量值为0,在标准范围内,因此SQL查询不需要优化。
✧BufferCacheHitRatio%(缓冲区高速缓存命中率):
该数据的平均值为58,在标准范围内
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 性能 测试 总结报告 详解