一个简单的Gatling场景的结果解释,有1个用户,达到20000卢比



经营场所

  1. 将API置于标量/喷雾中
  2. 总是返回OK的简单方法
  3. 我试图实现平均每秒2万个请求
  4. 两台机器(测试人员和测试人员(配置良好(EC2专用服务器,每台服务器都只有其API和Gatling配置文件sudo sysctl-w net.ipv4.ip_local_port_range="1025 65535"echo 300000 | sudo tee/proc/sys/fs/nr_openecho 300000 | sudo tee/proc/sys/fs/file max,/etc/security/limits.conf,ulimit-a-->65535(

这是我的简单测试文件场景,只有一个用户:

    setUp(scn.inject(constantUsersPerSec(1) during(60 seconds)))
    .throttle(
              //reachRps(20000) in (60 seconds),
              //holdFor(1 minute)
              //,
              jumpToRps(20000),
              holdFor(1 minutes)
             )
    .protocols(httpConf)

我试着在60秒内达到20k的rqs(最大值(,或者直接跳到20k并保持1分钟。

这总是我执行Gatling脚本后的结果:

模拟完成正在分析日志文件。。。分析日志文件已完成正在生成报告。。。================================================================================----全球信息-------------------------------------------------------->请求计数60(OK=60 KO=0(>最小响应时间0(OK=0 KO=-(>最大响应时间2(OK=2 KO=-(>平均响应时间1(OK=1 KO=-(>标准偏差0(OK=0 KO=-(>响应时间第50百分位1(OK=1 KO=-(>响应时间第75百分位2(OK=2 KO=-(>平均请求数/秒1.017(OK=1.017 KO=-(----响应时间分布------------------------------------------------>t 800 ms t>1200 ms 0(0%(>失败0(0%(

我不明白这些结果到底意味着什么。。。或者,也许我没有为我的目标配置正确的场景。

我尝试了几个场景:

    //setUp(scn.inject(atOnceUsers(20000)).protocols(httpConf))         
    //setUp(scn.inject(Users(200000).ramp(10)).protocols(httpConf))
    //setUp(scn.inject(constantUsersPerSec(20000) during(1 seconds)).protocols(httpConf))           
    //setUp(scn.inject(constantUsersPerSec(20000) during(1 seconds))).protocols(httpConf)
   //setUp(scn.inject(rampUsers(1500) over (60 seconds)))
   //setUp(scn.inject(atOnceUsers(50000)))
   //      .throttle(jumpToRps(50000),
   //                holdFor(1 minutes))
   //      .protocols(httpConf)
   setUp(scn.inject(constantUsersPerSec(1000) during(30 seconds)))
    .throttle(
              reachRps(20000) in (30 seconds),
              holdFor(1 minute)
              //,
              //jumpToRps(20000),
              //holdFor(1 minutes)  
             )
    .protocols(httpConf)

所以,我不知道如何配置我的scala测试文件,以便简单地获得这样的值:

>平均请求数/秒20000(OK=20000 KO=-(

您没有正确控制油门。来自文件:

您仍然需要在场景级别注入用户。限制性尝试以确保给定场景及其注入配置文件(用户数量和持续时间(。这是一个瓶颈,(上限(。如果你没有提供足够的用户,你就无法访问节气门。如果你的注射持续时间少于油门当所有用户都完成时,模拟将简单地停止。如果您喷射持续时间超过油门,模拟将在节气门的末端。

在每秒只注射1个用户的情况下,你怎么能期望达到20000转/秒?

最新更新