系列文章目录
安装jmeter
jmeter常用配置元件介绍总结之定时器
- 5.定时器
- 5.1.固定定时器
- 5.2.统一随机定时器
- 5.3.Precise Throughput Timer
- 5.4.Constant Throughput Timer
- 5.5.Synchronizing Timer
- 5.6.泊松随机定时器
- 5.7.高斯随机定时器
5.定时器
5.1.固定定时器
固定定时器Constant Timer
功能:设置固定时长,用来模拟用户的思考时间,设置后发出的请求会有间隔,即:间隔时间 = 取样器请求发送时间 + 定时器思考时间。
如图演示:我这里设置了延迟10s,通过表格查看结果,在第一个请求发出后,第二个带延迟10s的请求并没有发出,而是等待到设置的延迟时间10s后才进行了请求。
5.2.统一随机定时器
功能:取样器请求前做随机时间的延迟
参数说明
Random Delay Maximum:随机延迟的最大,会从0–设置的值这个范围来随机,随机出来的值不会大于设置的值,单位ms
Constant Delay Offset:设置固定的延迟偏移值,单位ms
请求的总延迟时间是 = 随机延迟时间(Random Delay) + 固定偏移值(Constant Delay)
如图演示:我这里设置了一个线程数循环3次,再第一个无定时器的请求发出后,有定时器的请求分别延迟了2s、9s、3s
5.3.Precise Throughput Timer
准确的吞吐量定时器Precise Throughput Timer
功能:精准的控制取样器请求的TPS
参数说明
目标吞吐量:设置期望需要达到的TPS
吞吐量周期(秒):在多长时间内达到这个TPS,一般设置为1
测试持续时间(秒):持续测试的时长,需要与线程组–调度器–持续时间一致
批处理中的线程数(线程):设置集合点,准备好多少个线程后一起发出请求
批处理中的线程之间的延迟(ms):设置每一批之间的延迟时间,如:批处理中的线程数设置为20,在第一批20个请求处理后,第二批延迟多久继续请求。默认0
如图:基本能稳定控制取样器的请求tps流量
5.4.Constant Throughput Timer
常数吞吐量定时器:Constant throughput Timer
功能:控制每分钟的样本量,让线程以指定的吞量进行执行
设置好期望需要达到的TPS,和选择好计算吞吐量的方式即可
注意:经过测试,选择”所有活动线程(共享)“方式,得出来的结果最为精确
5.5.Synchronizing Timer
同步定时器Synchronizing Timer
功能:设置集合点,在性能测试中可以用来模拟多用户并发的场景,通过阻塞线程等待线程数量达到要求后,同时释放,模拟所有的操作都在同一时间运行
参数说明
模拟用户组的数量:设置要模拟的并发数,线程数量达到多少后才释放。一般与线程组设置的线程数保持一致
超时时间:单位ms,设置一个超时时间,如果超过这个设置的时间线程数还没达到设置的数量,自动释放线程。如:模拟用户数设置为30,超时设置为300ms,则表示,如果300ms内,模拟用户数量没有达到30,就不继续阻塞,会释放掉已有的请求
注意:
1.超时时间不易设太长,也不能设太短,设置的时间应尽可能短且又能让模拟用户数能在时间内达到设置的值
2.当超时时间设置为0时,则表示等待达到设置的模拟用户数才释放,如果一直不能达到就一直不释放
5.6.泊松随机定时器
功能:在每个线程请求之前按随机的时间进行停顿,这个停顿时间会符合泊松分布
总的延迟=泊松分布值+偏移值
参数说明
Lambda:设置随机的最大值
Constant Delay Offset:设置的固定偏移值
如下图停顿时间会分布在100到400ms之间:
5.7.高斯随机定时器
功能:在请求时会延迟一个随机值时间,该随机值会符合正态分布的规律随机
总延迟 = 高斯分布值* 设置的偏差值+固定延迟偏移
参数说明
偏差:设置随机的最大值
固定延迟偏移:设置的固定的延迟偏移值