Gatling节流阀没有达到配置的每秒请求量。

问题描述 投票:0回答:1

我不知道这是一个bug,还是我不知道真实行为的 加特林节流装置 throttle 操作,但我不知道如何重现一个场景。

我希望在10分钟内每秒有15个请求的恒量。

我的设置如下。

setUp(scn.inject(constantConcurrentUsers(45) during(10 minutes)).protocols(httpProtocol)).throttle(
    reachRps(15) in (1 seconds),
    holdFor(10 minute))

我假设这里有45个可用用户(constantConcurrentUsers(45))来执行每秒15个请求(reachRps(15)),我将在1秒内达到这个速度(in (1 seconds)),我将保持这个速度10分钟(holdFor(10 minutes))

我试过用15个constantConcurrentUsers用户而不是45个,结果一样。

问题是:为什么我在结果中看到的最大并发请求量是13,而实际上每秒的平均请求量是更多?为什么我在结果中看到的最大并发请求量是13 而实际上每秒的平均请求量是5?

enter image description here

如何才能实现所述的方案?

performance performance-testing gatling throttling scala-gatling
1个回答
0
投票

正如在解释 公文:

你仍然必须在场景层面注入用户。节流试图确保在给定的场景及其注入情况(用户数量和持续时间)下的目标吞吐量。这是一个瓶颈,即一个上限。如果你没有提供足够的用户,你就不会达到节流。如果你的注入持续时间小于节流阀,当所有用户都完成后,你的模拟就会直接停止。如果你的注入持续时间比节流阀长,模拟将在节流阀结束时停止。

© www.soinside.com 2019 - 2024. All rights reserved.