JMeter定时器之同步定时器(Synchronizing Timer)

一、背景

在性能测试中,尤其是抢购/抢红包/秒杀活动业务等某时段集中访问场景,需要模拟多用户集中并发测试,此时需要用到同步定时器(Synchronizing Timer)。如下图,模拟用户组的数量设置20,相当于20个用户(线程)并发

二、同步定时器

同步定时器(Synchronizing Timer)用来保证我们的取样器在同一时刻向服务器发起负载测试。

  • Name:定时器名称,可根据用户需要自己填写。
  • Number of Simulated Users to Group by:设置同步的线程数量。当设置为0时,等同于线程组中设置的用户数量,当设置为20时,即当用户达到20时同时释放,当设置的数量大于线程数时,设置无效(数量不可设置为大于线程组中的线程数)。
  • Timeout in milliseconds:超时时间,单位为毫秒。当设置为0时,即当用户数量达到了设置的数量时则释放,否则一直等待,当设置为300毫秒时,则当时间达到300毫秒时,就释放已经集合的线程,不再等待。

三、示例

比如线程组设置50个线程,5秒内启动。

同步定时器(Synchronizing Timer),中同步的线程数量为10个,超时时间为0,每次生产10个线程时就立刻释放。

添加监听器用表格查看结果,可以看到每次有10个线程,同一时刻集中发出请求。

注意:如果在线程组上添加“同步定时器”,那同步定时器中的规则将对每一个请求都有效。若是要对单个接口进行设置,需要在该请求下单独添加“同时定时器”,方能生效。

posted @ 2022-10-17 16:19  xyztank  阅读(4205)  评论(0编辑  收藏  举报