前言

LoadRunner 中可以设置一个集合点,设置多个虚拟用户等待到一个时间点,到齐后一起发请求达到并发的目的。
集合点概念:阻塞线程,直到指定的线程数量到达后,再一起释放,可以瞬间产生很大的压力
jmeter 中使用同步定时器 Synchronizing Timer实现 LoadRunner 中集合点的功能,模拟多用户并发测试,即多个线程在同一时刻并发请求。

同步定时器 Synchronizing Timer

在HTTP请求的样本下添加-定时器-同步定时器

有2个参数设置

  • 模拟用户组的数: 也就是并发数,集合多少请求后一起发出去
  • 超时时间以毫秒为单位:指定人数多少秒没集合到算超时,默认为0,会一直等。设置500毫秒的话,如果500毫秒内凑齐并发数,就先发出去了。

并发请求

先禁用同步定时器,线程组设置30,循环一次

 运行后用表格查看结果,会看到starttime没有重复的,说明没有并发的请求

打开同步定时器,设置模拟用户组的数量为3,也就是3个并发,超时先设置为0

 

 再次运行,就可以看到在同一时间会发出3个请求(这里不是绝对的,会更接近3个并发)

 

 那么这里设置的并发数,会等线程数达到这个数量后一起发出去,起到并发的作用

超时时间

前面设置线程数30,并发3,刚好每凑齐3个请求一起发出去。如果线程数30,并发为7,最后还有2个请求凑不齐会怎样?(7个并发数一起发,7*4=28,还剩2个凑不齐7个)

 

 可以看到右上角有2个线程会一直等待,不会自动结束,因为前面超时时间为0,就一直等待,一直在运行

 

 

 为了避免这种一直等待的情况,可以设置同步定时器的超时时间,比如我设置500毫秒,如果500毫秒还没凑齐7个请求,那就先发出去,不用一直等了。

 

 运行后,查看结果

 

原文地址:http://www.cnblogs.com/manbuzhezhi/p/16877314.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性