You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gatling性能测试:如何配置Java模拟实现缓升峰值并持续X小时

实现Gatling先缓升后持续峰值的负载模拟配置(Java)

要实现缓慢提升请求至峰值后持续稳定负载的模式,你可以直接通过Gatling的多阶段注入组合来实现,无需混用stressPeakUsers(它适用于快速冲峰后回落的场景),只需将ramp类注入器和恒定负载注入器串联即可。

开环模式(injectOpen)配置示例

因为你当前使用的是开环模式(关注每秒请求数),推荐用rampUsersPerSec控制缓升过程,再用constantUsersPerSec维持峰值:

setUp(
    productServiceScn.createProduct.injectOpen(
        // 阶段1:7200秒(2小时)内从0逐步提升到每秒40.95个用户(对应总用户数81900)
        rampUsersPerSec(0).to(40.95).during(7200),
        // 阶段2:维持峰值X小时,示例为4小时(14400秒),可按需修改时长
        constantUsersPerSec(40.95).during(14400)
    ).protocols(http.product)
);

如果希望沿用你之前按总用户数缓升的rampUsers逻辑,也可以这样组合:

setUp(
    productServiceScn.createProduct.injectOpen(
        // 阶段1:2小时内逐步注入81900个用户,完成负载缓升
        rampUsers(81900).during(7200),
        // 阶段2:计算缓升阶段的平均每秒用户数(81900/7200≈11.375),维持该峰值X小时
        constantUsersPerSec(11.375).during(14400)
    ).protocols(http.product)
);

关键说明

  • 两个注入阶段会依次执行:先完成缓升阶段,再进入峰值维持阶段,完全匹配你需要的「上升-平稳」负载曲线
  • 可根据实际需求调整during的参数,自定义缓升时长和峰值持续时长(X小时)
  • 如果是闭环模式(injectClosed,关注并发用户数),可替换为rampConcurrentUsers + constantConcurrentUsers的组合

内容的提问来源于stack exchange,提问作者Maxim Vershinin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 04:00:02