jmeter三种阶梯式加压

2021-09-30  本文已影响0人  小敢敢不憨a

一.前言

在做性能测试的时候,在某些场景下需要逐渐加压,不总是停下来再修改线程再加压,且可以对比加压,找出服务的性能拐点。

二.三种逐渐加压方式

备注:普通的压测方式,并发的Samples是可预知的;而阶梯压测是未知的。

1.Stepping Thread Group

比较老,适用于复杂场景线程组(单线程组)

下载工具(JMeterPlugins-Standard.jar)

链接:https://pan.baidu.com/s/1xj0mrK4k11MjPawHSbbsuQ

提取码:e1cx

使用方法:将JMeterPlugins-Standard.jar包放在jmeter安装目录的\lib\ext路径下,重新启动jemter即可

This group will start N threads:设置线程组启动的线程总数为N个;

First,wait for N seconds:启动第一个线程之前,需要等待N秒;

Then start N threads:设置最开始时启动N个线程;Z

Next,add X threads every Y seconds,using ramXp-up Z seconds:每隔Y秒,启动X个线程,在Z秒内启动X个线程;

Then hold load for N seconds:启动的线程总数达到最大值之后,再持续运行N秒;

Finally,stop X threads every Y seconds:每Y秒停止X个线程;

2.Concurrency Thread Group

下载工具(jmeter-plugins-manager-1.3.jar)

链接:https://pan.baidu.com/s/1qoX2FiWdHaldO1Fvd_RvZA

提取码:206s

使用方法:下载Plugins Manager JAR文件并将其放入JMeter的lib / ext目录中。然后启动JMeter并转到“选项”菜单以访问插件管理器。

在插件中安装Concurrency Thread Group:

注意:这里只需要等待安装就行了,可能要需要2-3分钟,安装好后jmeter会自动重启

Target Concurrency: 100 预期客户端最大并发线程数为100

Ramp Up Time(min): 0.5 在30秒内启动100个线程

Ramp-up Steps Count: 20 在上述时间内,分20次启动

Hold Target Rate Time (min): 0.5达到目标并发线程数300后,再并发运行30秒

Thread Iterations Limit:线程迭代次数限制,即循环次数(空,即为一次)(无特殊情况,建议不设置该选项的值)

Log Threads Status into File:将线程状态记录到文件中(保存日志文件)

3.Ultimate Thread Group

参数含义解释:

Start Threads Count:当前行启动的线程总数

Initial Delay/sec:延时启动当前行的线程,单位:秒

Startup Time/sec:启动当前行所有线程达峰值所需时间,单位:秒

Hold Load For/sec:当前行线程达到峰值后的稳定加载时间,单位:秒

Shutdown Time:停止当前行所有线程所需时间,单位:秒

上图含义:

第一个线程:没有延时,在10秒内启动100个线程数,到达100个后稳定运行60秒后,在再10秒内结束100个线程数。第二、第三线程同理。

根据以上描述可以计算两个阶段的拐点值。

上一篇 下一篇

猜你喜欢

热点阅读