压力测试经验总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
经验分析:
1 、当增大系统的压力( 或增加并发用户数) 时,吞吐率和TPS 的变化曲线呈正比变化,
则系统基本稳定
2 、若压力增大时,吞吐率的曲线增加到一定程度后出现变化缓慢,甚至平坦,同时TPS 也
趋于平坦,查看系统资源使用,如果资源使用率比较高,则说明服务器硬件资源存在问题,需要拓展硬件或者优化应用。反之,则说明服务器硬件资源不存在问题,查看网络流量,估计网络带宽存在问题。
3 、点击率/TPS 曲线出现变化缓慢或者平坦, 很可能是服务器响应时间增加,观察服务
器资源使用情况,确定是否是服务器问题或者应用问题
LOADRUNNER 15中常用分析点
1、Vusers:提供了生产负载的虚拟用户运行状态的相关信息,可以帮助我们了解负载生成
的结果。
2、Rendezvous(负载过程中集合点下的虚拟用户):当设置集合点后会生成相关数据,反
映了随着时间的推移各个时间点上并发用户的数目,方便我们了解并发用户的变化情况。
3、Errors(错误统计):通过错误信息可以了解错误产生的时间和错误类型,方便定位产生
错误的原因。
4、Errors per Second(每秒错误):了解在每个时间点上错误产生的数目,数值越小越好。
通过统计数据可以了解错误随负载的变化情况,定为何时系统在负载下开始不稳定甚至出错。
5、Average Transaction Response Time(平均事务响应时间):反映随着时间的变化事务响
应时间的变化情况,时间越小说明处理的速度越快。如果和用户负载生成图合并,就可以发现用户负载增加对系统事务响应时间的影响规律。
6、Transactions per Second(每秒事务):TPS吞吐量,反映了系统在同一时间内能处理事
务的最大能力,这个数据越高,说明系统处理能力越强。
7、Transactions Summary(事务概要说明)统计事物的Pass数和Fail数,了解负载的事
务完成情况。通过的事务数越多,说明系统的处理能力越强;失败的事务数越小说明系统越可靠。
8、Transaction performance Summary(事务性能概要):事务的平均时间、最大时间、最小时
间柱状图,方便分析事务响应时间的情况。柱状图的落差越小说明响应时间的波动小,如果落差很大,说明系统不够稳定。
9、Transaction Response Time Under Load(用户负载下事务响应时间):负载用户增长的过
程中响应时间的变化情况,该图的线条越平稳,说明系统越稳定。
10、Transactions Response time(事务响应时间百分比):不同百分比下的事务响应时间范围,
可以了解有多少比例的事物发生在某个时间内,也可以发现响应时间的分布规律,数据越平稳说明响应时间变化越小。
11、Transaction Response Time(各时间段上的事务数):每个时间段上的事务个数,响应
时间较小的分类下的是无数越多越好。
12、Hits per Second(每秒点击):当前负载重对系统所产生的点击量记录,每一次点击相
当于对服务器发出了一次请求,数据越大越好。
13、Throughput(吞吐量):系统负载下所使用的带宽,该数据越小说明系统的带宽依赖就
越小,通过这个数据可以确定是不是网络出现了瓶颈。
14、HTTP Responses per Second(每秒HTTP响应):每秒服务器返回各种状态的数目,一般和每秒点击量相同。点击量是客户端发出的请求数,而HTTP响应数是服务器返回的响应数。如果服务器的响应数小于点击量,那么说明服务器无法应答超出负载的连接请求。
15、Connections per Second(每秒连接):统计终端的连接和新建的连接数,方便了解每秒对服务器产生连接的数量。同时连接数越多,说明服务器的连接池越大,当连接数随着负载上升而停止时,说明系统的连接池已满,通常这时候服务器会返回504错误。需要修改服务器的最大连接来解决该问题。
设置脚本执行次数:
脚本录制界面:Vuser—Run-Time Settings--
场景中设置执行次数:Run-Time Settings
LR压力时出现Action.c(13): Error -27796: Failed to connect to server ":80": [10060] Connection timed out的解决办法如下:
1、修改run_time settings—Internet protocol—Perferences—Options修改
HTTP-request connect timeout 1000,HTTP-request receieve timeout 1000,HTTP Keep-Alive timeout 800,Step download timeout 10000
注意:Controller 的run_time settings 也要同步设置
2、run_time settings—Browser—Browser Emulation 取消勾选Simulate a new user on each
iteration
Simulate a new user on each iteration:模拟每一次迭代的新用户
simulate a new user on each iteration的作用是在迭代时重置上下文状态
开启simulate a new user on each iteration则Loadrunner主动关闭本端的TCP连接,重新开启一个连接发送请求,造成服务器TIME_WAIT
关闭simulate a new user on each iteration,同时也关闭了清除缓存,对服务器产生较小的压力
CDN技术:
内容分发网络(CDN)是一种新型网络构建方式,它是为能在传统的IP网发布宽带丰富媒体而特别优化的网络覆盖层;而从广义的角度,CDN代表了一种基于质量与秩序的网络服务模式。
简单地说,内容分发网络(CDN)是一个经策略性部署的整体系统,包括分布式存储、负载均