Jmeter多种定时器实现方法解析
1、固定定时器(constant timer)
用法(场景):更真实的模拟用户场景,需要设置等待时间,或是等待上一个请求的时间才执行,给 sampler 之间的思考时间
备注:如果需要每个步骤均延迟,则将定时器放在与请求持平的位置,若只针对一个请求延迟,则将定时器放在该请求子节点中。
(1)每个sampler均延迟启动,(包含第一个 sampler)示例如下
(2)只针对某一个 sampler 请求延迟启动,示例如下
2、高斯随机定时器(gaussian random timer)
下图中固定延迟2000ms,偏差1000ms,意思是时间延迟2000-3000ms之间
备注:如果需要每个步骤均延迟,则将定时器放在与请求持平的位置,若只针对一个请求延迟,则将定时器放在该请求子节点中。
3、均匀随机定时器(uniform random timer)
和高斯随机定时器的作用差异不大,区别在于延时时间在指定范围内且每个时间的取值概率相同,每个时间间隔都有相同的概率发生,总的延迟时间就是随机值和偏移值之和。
random delay maximum(in milliseconds) 随机延迟时间的最大毫秒数
constant delay offset(in milliseconds) 暂停的毫秒数减去随机延迟的毫秒数
4、同步定时器(synchronizing timer)
- 这个定时器和loadrunner当中的集合点(rendezvous point)作用相似,其作用是:阻塞线程,直到指定的线程数量到达后,再一起释放,可以瞬间产生很大的压力。
- number of simulated users to group by:集合多少人后再执行请求(也就是执行的线程数)
- 注意:等同于设置为线程租中的线程数,一定要确保设置的值不大于它所在线程组包含的用户数。
- timeout in milliseconds:指定人数多少秒没集合到算超时(设置延迟时间以毫秒为单位)
- 注意:如果设置 timeout in milliseconds 为0,表示无超时时间,会一直等下去。
- 线程数量无法达到 "number of simultaneous users to group by" 中设置的值,那么 test 将无限等待,除非手动终止
- timeout in milliseconds 超时时间 > 线程组中(用户启动时间)
4、泊松随机定时器(poisson random timer)
- 这个定时器在每个线程请求之前按随机的时间停顿,大部分的时间间隔出现在一个特定的值,总的延迟就是泊松分布值和偏移值之和。
- 下图表示暂停时间会分布在100到400毫秒之间:
- lambda(in milliseconds) 兰布达值
- constant delay offset(in milliseconds) 暂停的毫秒数减去随机延迟的毫秒数
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: Go 代码生成工具详解
下一篇: 如何用R语言绘制饼图和条形图