Loadrunner-场景设置以及监控结果分析
一、Controller的基本工作原理:通过1、2、3设置来模拟用户的操作,收集出4的各种信息
二、场景设置一般步骤
- 1、新建场景(Controller)
- 2、添加脚本
- 3、设置Schedule(设置场景运行的策略,主要设置Globle Schedule 这一项)
4、添加压力机(可以指定多台windows或者linux压力机产生压力)
1)添加压力机方法:Scenario - Load Generators
2)添加的压力机于Controller所在机器在同一网段,把防火墙关了5、设置run time setting
1)以Controller中的选项为主6、运行观察
三、分析思路:
- 1、分析原则:由外到内,由表到里,层层深入。拆分问题,隔离问题(好比学习一样,把时
间段分成一片一片的,把零散时间灵活应用起来)。 - 2、 对于一个应用系统,性能开始出现了下降,最直观最直接的表象就是系统的响应时间,
如果响应时间变长,则系统响应时间就是分析性能的起点。 - 3、 任何一个复杂的系统都可以分为网络和服务器两部分。
- 4、 性能测试不是一蹴而就的,而是贯穿整个性能测试的流程。
- 5、 性能分析调优是一个不断推理不断验证的过程,不断试错,不断改正,打开自己的思维。
四、重点指标:
- 1、TPS(每秒通过事物数,直接反应服务器的处理能力,可理解为地铁进站口刷卡机)
- 2、平均事物响应时间(最直观的指标,可作为突破口)
- 3、每秒连接数(可初步判断是否需要调优连接数配置)
- 4、点击数(直接反应请求数、客户端、网络,点击数出现问题一般为脚本或者网络出现了问题)
五、分析思路模型:
1 、重点关注Transaction Summary (事物概要)模块
(1)平均响应时间:当标准差比较小的时候,选择事物的平均响应时间。
(2)90%响应时间:当标准差比较大的时候,去掉最高最低,取90%响应时间更有
分析价值。
*(3)Std:标准差比较小,则相对比较平稳,标准差比较大时,则表明浮动比较大
分析Web Tour中的Transaction Summary (事物概要),回想前面的内容,最直观的指标就是“平均响应时间”,可把它作为突破口
由图可以看出,check的平均响应时间是最大的,要相对的比较,可以把check作为分析的突破口。
其他事物可以不用分析,根据木桶原理,补最大的缺口。
2、HTTP Responses Summary(HTTP返回状态概要)
(1)HTTP Responses Summary主要统计服务器的返回状态
(2)由图可看出返回都是200的状态码,而且总数8789与Statistics Summary(标准概要)
中的值基本一致,说明大部分请求都是成功的。
** 注意:**
说非200的状态码不一定是错的,需要根据具体业务来分析,比如302、304状
态码也是很正常的,不会影响性能测试结果。但是返回500的状态码的话就是错误的,
说明服务器内部错误。
六、分析过程 重点、重点、、、
接触LR的分析过程:
1、首先来分析running Vusers这项,双击打开
分析:
首先要看坐标图,X轴代表时间,Y轴一般代表指标,这里就是代表模拟用户数。由图可以看出,模拟用户数慢慢增长,然后平稳一段时间,最后再慢慢下降,这是一个合理的过程。假如出现红线那样的坐标图,用户数急速下降,那么很可能就是服务器down掉了。
2、 Error statistics(错误描述统计)
分析:
能进行到这一步说明脚本运行是没问题的了(比如检查点不对这些因素就可以排除掉了)。
最后两行有Faied to connect server 明显可以看出是连接服务器失败了;有两行是timeout提示,这个出现的次数不多,可以不管。
如果要去掉的话可以在Controller中Run-time-Setting设置,把perferences中的HTTP-request connect timeout(sec)、HTTP-request receive timeout(sec)和Step download timeout(sec)的值调大一点。
前面两行初步判断可能是关联出了问题,关联抓不到,可能是服务器返回失败。
得出初步结论:
- (1)连接服务器失败,遭到服务器拒绝,可能是系统出现瓶颈无法及时处理请求
- (2)关联抓不到,可能是服务器返回失败
- (3)timeout提示一般可以不管,如果要去掉的话可以在Controller中Run-time-Setting设置
3 、Error per Second(每秒错误数)
- 每秒错误数图是对每秒出现的错误进行统计,数值越小越好。
- 2-7min过程中错误数明显增加,可以判断系统在这个时间段开始不稳定。
4、Average Transaction Response Time(平均事物响应时间)
每秒内事物执行所用的时间
由图可以看出,到3s后,事物的平均响应时间突然下降。在这里可以大胆地推测,是不是因为服务器非常好,处理事物的能力非常强,所以事物执行的时间很少。
但是联想到上面的每秒错误数的图,在一段时间内每秒错误数都是差不多平稳的,所以说服务器处理事物能力非常好这个结论经不起推敲。
也有可能是处理能力差或者出现大量的连接错误、服务器出现down机等,前面说到,任何一个复杂的系统都可以分为服务器和网络,所以说也有可能是网络的原因。
结论:
(1)服务器出现拒绝连接、出现大量错误或者是服务器down机了
(2)也有可能是网络连接的问题
5、 TPS(每秒通过事物数)
TPS是考查系统性能的一个重要指标,值越高,说明系统处理能力越强
可以看出来,整体的TPS不是很高,说明服务器处理能力有待提高,后续要把TPS提升
6 、Hits per Second(每秒点击数)
虚拟用户每秒向Web服务器提交的Http请求数
总体来看没有啥问题,还是可以。2-5min过程中出现了一些波动,每秒点击数是服务端侧的,
那就应该是脚本或者网络的问题,从前面的分析得知,脚本是没问题的,那就基本可以判断出现波动是因为网络问题导致的。
7、Connections per Second(每秒连接数)
每秒连接数就是每秒中打开的TCP/IP连接数,当连接数到达稳定的时候而事物响应时间增大时,
添加连接数可以使系统性能得到提高。好比一个池塘放水,多开几条沟水会放得越快。
每秒连接数统计新建的连接数和关闭的连接数,可以了解每秒对服务器产生连接的数量,
图中可以看出每秒连接数都是比较低的,可以适当增加连接数来提高系统性能。
七、性能测试流程
过程分析:
(1)性能需求点获取
- 根据客户的需求由客户方提出
- 根据历史数据分析
- 参考历史项目或者其他同行业的项目
- 业内通用规则
- 确实没有数据,那就根据自己来,然后一边分析
(2)测试点的提取,常放在客户常用的、重点的模块和功能上
- 用户常用功能,比如登录
- 数据流转向复杂或频繁的地方
- 发生频率高的地方,比如搜索,提交订单,下单结账。
- 关键程度高的(比如产品经理认为绝对不能出现问题的地方,登录、下单等)
- 资源占用非常严重的
- 关键的接口
(3)测试环境
- 最好能和线上保持一致
- 如果不能那就等比的放大或缩小
- 软件版本应该一致
(4)测试数据
- 铺底数据的准备:是空库还是有数据量。数据量的选择参考线上的数据量进行
等比的放大或缩小。 - 最好的数据来源于线上的真实数据,因为分布合理
- 如果涉及到保密的数据,注意数据的脱密处理
(5)测试过程
- 性能测试时一个需要不断改进的过程,每一次尽量做得更好,多做一点点以前
没想到的东西,然后不断积累总结,然后你会发现自己对性能测试有了更深的
理解
(6)响应时间预估
- 线上监控系统得知
- 业界统一参考标准:2 - 5 - 8
(7)TPS预估
系统的性能由TPS决定,跟并发用户数没有多大关系。系统最大的TPS是一定
的,就好比池塘里装的水是有限的。但是并发用户数不一定,可以通过减小思
考时间来增大并发用户数。- 新系统:没有历史数据参考,只能通过业务部门来评估
- 旧系统:最好通过日志分析来得出
对于上线的系统,可以选取高峰时刻,在五分钟或者十分钟内,某个交易的最
大值,按照单位时间内完成的笔数计算书TPS,即业务笔数/单位时间
Loadrunner-场景设置以及监控结果分析的更多相关文章
- LoadRunner场景设置
创建负载测试场景场景目标:模拟10家旅行社同时登陆.搜索航班.购买机票.查看航班路线并退出打开Controller并创建一个新场景1.打开HP LoadRunner2.打开Controller在Loa ...
- LoadRunner的场景设置
loadrunner场景设置的方法: 1.逐步增加用户数,分多次去运行场景.比如:第一次运行50并发,第二次运行100并发…… 2.针对同一个脚本设置多个组,使用组策略(点击Edit Schedule ...
- loadrunner场景之集合点设置技巧
在loadrunner的虚拟用户中,术语concurrent(并发)和simultaneous(同时)存在一些区别,concurrent 是指虚拟场景中参于运行的虚拟用户. 而simultaneous ...
- LR工具使用之场景设置
LR工具使用之场景设置 一.操作步骤 1.运行loadrunner,进入运行负载测试控件:
- [转][LoadRunner]LR性能测试结果样例分析
LR性能测试结果样例分析 测试结果分析 LoadRunner性能测试结果分析是个复杂的过程,通常可以从结果摘要.并发数.平均事务响应时间.每秒点击数.业务成功率.系统资源.网页细分图.Web服务器资源 ...
- [LoadRunner]LR性能测试结果样例分析
R性能测试结果样例分析 测试结果分析 LoadRunner性能测试结果分析是个复杂的过程,通常可以从结果摘要.并发数.平均事务响应时间.每秒点击数.业务成功率.系统资源.网页细分图.Web服务器资源. ...
- LR场景设置里的各参数解释
1.Start Vuser ep1: Strat 100 Vusers :2 every 00:00:15(HH:MM:SS) 解释: 场景总共要跑100个虚拟用户,每15秒启动2个虚拟用户Vuser ...
- web性能监控与分析
注:原文为:andyguo: <web性能监控与分析> 性能测试需要使用不同的工具,结合系统日志,监控服务器.应用等方面的多项指标.以下阐述监控指标.监控工具.瓶颈分析. 服务端监控指标 ...
- Jmeter场景设置与监听
目录 Jmeter场景设置 场景运行 Jmeter测试监控 Samples:取样器运行次数(提交了多少笔业务). Jmeter场景设置 场景的概念: 场景是用来尽量真实模拟用户操作的工作单元,场景设计 ...
随机推荐
- cocos2dx打飞机项目笔记六:GameScene类和碰撞检测 boundingbox
GameScene类虽然是占用游戏最多时间的类,但是里面的东西不是很多,最重要的就是碰撞检测了,碰撞检测代码如下: void GameScene::detectionCrash() { CCArray ...
- iis和apache共享80端口
Windows server 2003服务器上安装有默认 IIS 6和Apache两个服务器,IIS运行的一个.net程序,apache运行php程序,现在想让它们同时都能通过80端口访问,设置起来还 ...
- Linux下解压分包文件zip(zip/z01/z02)
分包压缩的zip文件不能被7z解压,且这种格式是Windows才能创建出来,在Linux下不会以这种方式去压包.下面是在Linux下处理这种文件的做法: 方法一: cat xx.z01 xx.zip ...
- java格式化输出 printf 例子
import java.util.Date; public class Printf { public static void main(String[] args) { // %s表示输出字符串,也 ...
- 【P2564】生日礼物(单调队列)
这个题看上去状态比较多,实际上由于题目的输出需要,又因为是一个线性的结构,所以我们可以有一些操作. 这么想,如果我们有了一个满足条件的区间,此时我们缩减左端点,然后判断此时是否还是满足,满足就继续缩减 ...
- Jboss remote getshell (JMXInvokerServlet) vc版
#include "stdafx.h" #include <Windows.h> #include <stdio.h> #include <winht ...
- ios点击事件失效
当使用委托给一个元素添加click事件时,如果事件是委托到 document 或 body 上,并且委托的元素是默认不可点击的(如 div, span 等),此时 click 事件会失效. 解决办法有 ...
- 使用Navicat进行数据库自动备份
今天经历一次数据库丢库事件,顿时觉得定时备份数据库很重要. 但是每天自己手动备份实在是太麻烦了,于是乎,想到用计划任务进行每天定时自动备份. 发现Navicat自带就有备份 还可以直接计划任务,贼方 ...
- hibernate报错org.hibernate.HibernateException: No CurrentSessionContext configured!
org.hibernate.HibernateException: No CurrentSessionContext configured! at org.hibernate.internal.Ses ...
- spring boot: 线程池ThreadPoolTaskExecutor, 多线程
由于项目里需要用到线程池来提高处理速度,记录一下spring的taskExecutor执行器来实现线程池. ThreadPoolTaskExecutor的配置在网上找了很多解释没找到,看了下Threa ...