▲ 《 50页性能分析案例总结》 ▲
线程组参数解释
- 线程数(即并发数): 一个用户占一个线程,200个线程就是模拟200个用户;
- Ramp-Up 时间(秒): 设置线程需要多长时间全部启动;如果线程数为200,准备时长为10,那么需要1秒钟启动20个线程;也就是每秒钟启动20个线程;
- 循环次数: 一次场景下来, 请求的数量=线程数 * 循环次数 ;如果线程数为200,循环次数为10 ,那么每个线程发送10次请求;总请求数为200*10=2000 ;如果勾选了“永远”,那么所有线程会一直发送请求,直到选择停止运行脚本;
JMeter聚合报告参数解释
- Label :每个JMeter的element的Name值,例如HTTP Request的Name;
- 样本 :发出请求数量;模拟20个用户,循环100次,所以显示了2000;
- 平均值 :平均响应时间(单位:ms);默认是单个Request的平均响应时间,当使用了Transaction Controller时,也可以以Transaction为单位显示平均响应时间;
- 中位数 :50%的用户响应时间小于这个值;
- 95%百分位 :95%的用户响应时间小于这个值;
- 99%百分位 :99%的用户响应时间小于这个值;
- 最小值 :用户响应时间最小值;
- 最大值 :用户响应时间最大值;
- 异常 % :测试出现的错误请求数量百分比; 请求的错误率 = 错误请求的数量/请求的总数 ;若出现错误就要看服务端的日志查找定位原因;
- 吞吐量 :Throughput简称TPS,吞吐量,默认情况下表示每秒处理的请求数,也就是指服务器处理能力,TPS越高说明服务器处理能力越好;
- KB/sec :每秒从服务器端接收到的数据量;
压测结果分析
异常%:确认是否允许错误的发生或者错误率允许在多大的范围内;
吞吐量:吞吐量每秒请求的数大于并发数,则可以慢慢的往上面增加;若在压测的机器性能很好的情况下,出现吞吐量小于并发数,说明并发数不能再增加了,可以慢慢的往下减,找到最佳的并发数;
最大的TPS:不断的增加并发数,加到TPS达到一定值开始出现下降,那么那个值就是最大的TPS;
最大的并发数:
最大的并发数和最大的TPS是不同的概率,一般不断增加并发数,达到一个值后,服务器出现请求超时,则可认为该值为最大的并发数;
压测的时候要时刻 关注应用服务器数据库服务器等CPU、内存、网络等使用情况;
压测过程出现性能瓶颈,若压测客户端任务管理器查看到的CPU、网络和CPU都正常,未达到90%以上,则可以说明服务器有问题,压测客户端没有问题;
影响性能考虑点包括:数据库、应用程序、中间件(php-fpm、nginx、redis…)、网络和操作系统等方面;
循环控制器
目的:循环该控制器下面子节点的次数。
线程组里循环次数设置了n次,循环控制器下的循环次数也设置了m次,则该控制器下的请求运行的次数是(n*m)次。
如果(If)控制器
目的:判断条件,可以引用变量。当为 true 时,执行子节点
Interpret Condition as Variable Expression?
如果选择了此项,则条件必须是一个表达式,需要使用 ${__jexl3 }或 ${__groovy } 表达式)
Evaluate for all children
- 勾选 :对所有采样器执行前都判断一次
- 不勾选 :仅入口判断一次
如果是字符串的比较,需要加””
" ${url}"=="baidu"
注意事项:
在if逻辑控制器的Expression中不能直接填写条件表达式,需要借助函数将条件表达式计算为true/false,可以借助的函数有 __jexl3和 __groovy函数
学习安排上!
码个资料送给你
▲ 《 50页性能分析案例总结》 ▲
扫描下方二维码免费领取
上文内容不用于商业目的,如涉及知识产权问题,请权利人后台留言联系码同学小编,我们将立即处理。
转载自: http://navo.top/UjuIjy
“在看”点一点
👇 👇 👇返回搜狐,查看更多
责任编辑: