Jmeter 之准确并发,压测几十分钟,几个小时。

发布于 更新于

技术文章性能测试

Jmeter之准确并发,压测几十分钟,几个小时。 我刚开始也是走了很多弯路,网上也没有具体的教程。 通过自己的发掘,终于尝试的发现了一种方法,可能不是很专业,有什么错误的地方,还需大家提出,我也跟着学习学习。 下面以实战的方式,为大家演练!

Jmeter之准确并发,压测几十分钟,几个小时。 我刚开始也是走了很多弯路,网上也没有具体的教程。 通过自己的发掘,终于尝试的发现了一种方法,可能不是很专业,有什么错误的地方,还需大家提出,我也跟着学习学习。 下面以实战的方式,为大家演练! 1 如下图,找到了一个接口,现在想让这个接口并发为50,持续一分钟 线程组设置如图:

image.png

注意:如果你这样设置了,就去跑的话,你会发现并发很大,根本不是50并发 为什么会这样呢? 这里我把线程组里面的几个参数给大家理理 1 线程组:我们直接可以理解为多少个用户—— 一般和你的并发数相等 2 Ramp-ups时间:规定时间的跑完所有请求 3 循环次数:线程组循环多少次——你设置线程组为50,循环10次,就会有500个请求 如图上我所设置的,Ramp-up时间为1,他就会1s内,跑完所有所有请求。 然而我设置的循环次数为——永久 所有请求=循环次数*线程数 :所以这个数是无穷大的 我们JMter就会1s内能跑多少就跑多少 那我们怎么办呢? 2 下面为大家说一下,我走过的第一个弯路,我的设置如下 image.png

根据我上面所说的: 这样设置的话,它是不是会在(Ramp-up时间)60s跑完(线程组)50*循环次数(60)个请求,这样是不是50并发/s 理想状态这种方法是可以的,但是你可以吧线程组设置成1,并发60s试试,你会发现JMeter根本不会听你的,他几秒就跑完了,说明这种方法是不准确的。 3 准确的吞吐量定时器 通过自己的尝试,发现了这个准确的吞吐量定时器,顾名思义,这个就是控制吞吐量的 image.png

像以上图这样设置的情况下,我们无法控制并发,但是能控制时间 准确的吞吐量定时器 能控制并发,添加在接口下面,如图 image.png

4 查看是否达到效果 image.png

达到了效果,这里jmeter会有一点偏差,我个人觉得是正常的,因为JMter也是软件,你要他准确控制它1s为多少并发,没有一点偏差,我觉得不太现实。当然少数并发还是可以控制住的。你可以试试10并发,压60s,结果还是准确的。

来源:testingpai

继续阅读