同步定时器又是集合点,表示将线程数集合到设置的数量后同时释放给线程组。同步定时器是在线程组请求之前执行的。

一、在jmeter中添加同步定时器

 

jemeter时区设置 jmeter _time_线程组

模拟用户组的数量(Number of Simulated Users to Group by):设置同步的线程数

注意:一定要确保设置的值不大于它所在线程组中设置的线程数。

超时时间以毫秒为单位(Timeout in milliseconds):超时时间以毫秒为单位设置为0,表示无超时时间,将会等待模拟用户组的数量中设置的值达到了才释放给线程组

如果设置的时间大于0,一旦到了设置的时间,即使集合的线程数没有达到模拟用户组的数量中设置的值,也会释放给线程组

jemeter时区设置 jmeter _time_线程组_02

二、栗子

创建一个http请求,要求10秒并发400个

jemeter时区设置 jmeter _time_服务器_03

同步定时器上模拟用户组的数量设置为40,超时时间以毫秒为单位设置为1000,也就是每1秒集合40个

ps:附图中【超时时间以毫秒为单位】应输入1000

jemeter时区设置 jmeter _time_java_04

那么执行线程组的顺序应该就是:先执行同步定时器,每秒集满40个后,再释放给线程组。再集满40个,再释放给线程组。。。。

通过用表格察看结果查看请求的发起时间,400个请求,10秒并发完成

jemeter时区设置 jmeter _time_线程组_05

 

jemeter时区设置 jmeter _time_线程组_06

三、关于线程组的的并发

线程组中设置多少秒内并发多少线程,但是实际结果并没有按照我们设置的来,这个原因大有可能是因为使用的电脑本身配置不够,所以达不到

栗子:

现在禁用同步定时器,线程组设置线程数200,1秒内并发完

jemeter时区设置 jmeter _time_服务器_07

查看结果,并没有在1秒内并发完

jemeter时区设置 jmeter _time_服务器_08

这时再开启同步定时器,模拟用户组数量设置为200,超时时间以毫秒为单位设置为0。再次发起并发,200个线程均在1秒的时间并发完了

jemeter时区设置 jmeter _time_jemeter时区设置_09