jmeter的Throughput Shaping Timer(吞吐量控制)
Throughput Shaping Timer用来控制吞吐量的定时器,通过延缓线程运行来整体控制取样器产生的RPS。
插件下载地址:https://jmeter-plugins.org/?search=jpgc-tst
下载之后放在jmeter安装目录的、lib/ext下面
下图分别是RPS为10、20、50,在此RPS水平上运行60秒。此元件可以在稳定性测试时,帮我们自动调整负载,保持稳定的负载
参数说明:
Start RPS :开始运行RPS,开始后马上加载此数量的请求。
End RPS :结束时RPS, 以此数为RPS最高控制点,目标是不超过此值,一般来说会在此值附近浮动。
Duration,sec: 线程运行时长
注意:
End RPS 设置了RPS 上限,但要达到此值是需要线程(虚拟用户〉来执行的,所以我们先要预设够多的线程,不然RPS目标没法达到,JMeter 线程组在运行过程中是不会自动增加线程数的,只能…次性设置。下面有个计算线程数的公式。
比如一个请求响应时间为2秒,END RPS 为30,那么线程数:2*30=60 C响应时间*TPS)。即大约要60个线程, 考虑到运行时诸多影响因素(线程数增加后响应时间增加了), 我们还需要预备更多的线程,也许我们加到70个线程才能满足要求,这只是一个估算值。不用担心线程数太多时RPS 会超End RPS, 此元件会自动延迟线程的运行来稳定RPS。