Jmeter 集合点详细讲解
转载自:https://blog.csdn.net/qq_36350532/article/details/80622349
===========================
集合点:让所有请求在不满足条件的时候处于等待状态。
如:我集合点设置为50,那么不满足50个请求的时候,这些请求都会集合在一起,处于等待状态,当达到50的时候,就一起执行。从而达到并发的效果。
那么Jmeter中可以通过同步定时器 Synchronizing Timer 来完成。
Number of Simulated Users to Group by:按组分组的模拟用户数。
timeout in milliseconds:Timout的意思是等待请求多久后,不管线程数有没有到达设置的并发数量都开始运行测试。
注:同步定时器要在请求之前设置。
场景一:线程数设置为6,集合点为3,超时为0,点击运行。
可以看到有6个结果,此处分成了2组进行并发,每次是3个用户。
场景二:线程数设置3,集合点设置为4,超时为0,点击运行。
发现没有执行请求,需要手动stop。原因:不够并发数且超时为0
场景三:线程数设置6,集合点设置为4,超时为0,点击运行。
发现只有4个请求,然后一直都没有停止,需要手动stop。原因:第一组够集合点,一起并发,第二组只有2个,不够集合点。
场景四:线程数设置6,集合点设置为6,超时为0,点击运行。
可以看到有6个请求。分1组执行。
场景五:线程数设置6,集合点设置为4,超时为5000,点击运行。
分2组,发现先有4个请求,为第一组,5秒后,出现后2个请求,为第二组,共6个。
结论:
Timeout in milliseconds: 如果设置为0,Timer将会等待线程数达到了"Number of Simultaneous Users to Group"中设置的值才释放。也就是说,如果线程数不足集合点中设置的数,就会一直等待,需要手动stop。
如果大于0,那么如果超过Timeout in milliseconds中设置的最大等待时间(毫秒为单位)后还没达到"Number of Simultaneous Users to Group"中设置的值,Timer将不再等待,释放已到达的线程。也就是说如果线程数不满足集合点中设置的值,则在timeout中设置的时间后继续执行不足的那些线程。
Timeout in milliseconds默认为0。所以当timeout设置为0,但是线程数又不满足集合点中设置的值时,就会一直等待,不执行请求,需要手动stop。
同步定时器是在每一个采集器之前执行的,不管定时器的位置是在采集器之前还是之后,都是在采集器之前执行。
如果一个线程中存在多个采集器,同步定时器和这些采集器在同一级(同一节点下),则同时作用于这些采集器。
如果需要一个定时器单独对应某一个采集器,可以在采集器的子节点中创建定时器。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
2023-02-27 springboot+mybatis+mysql项目搭建,含示例Demo
2023-02-27 SpringBoot项目打包部署
2023-02-27 linux配置JAVA_HOME
2023-02-27 【Linux】配置查看JAVA_HOME
2023-02-27 MySQL远程连接权限设置,创建远程连接用户,使用远程工具连接数据库(详细)
2023-02-27 VMWare虚拟机CentOS7.4开机出现welcome to emergency mode的解决方法
2023-02-27 chaosblade1.0.3实战安装