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

如何用Concurrency Thread Group实现阶梯式用户加压(90→990,每5分钟加90)

JMeter Concurrency Thread Group 配置方案(匹配你的阶梯压测场景)

你的压测场景是初始90并发,每5分钟新增90,最终990并发运行5分钟,用Concurrency Thread Group(简称CTG)实现的话,最直观的方式是搭配Stepping Thread Group控制阶梯式并发增长,CTG负责维持稳定并发数(线程退出后自动补位)。以下是具体配置步骤和检查要点:

一、核心参数梳理

先把场景拆解为可配置的数值:

  • 初始并发:90
  • 每次新增并发:90
  • 新增间隔:5分钟(300秒)
  • 从90到990需新增10次,加上最后维持阶段,共11个阶段
  • 每个阶段持续5分钟(300秒)
  • 总压测时长:11×300=3300秒(55分钟)

二、具体配置步骤

1. 安装必要插件

如果JMeter未安装CTG和Stepping Thread Group,打开Options -> Plugins Manager,搜索并安装jp@gc - Concurrency Thread Group和jp@gc - Stepping Thread Group。

2. 配置Stepping Thread Group(控制阶梯增长)

添加jp@gc - Stepping Thread Group后,填写以下参数:

  • Initial Thread Count:90(初始启动的线程数)
  • Thread Count Increase:90(每次新增的线程数)
  • Increase Thread Count Every:300(单位:秒,即每5分钟加一次)
  • Repeat Count:10(从90到990需要加10次)
  • Hold Load For:300(最后达到990后,保持运行的时间,单位秒)
  • Startup Delay:0(立即启动压测)

3. 配置Concurrency Thread Group(维持稳定并发)

添加jp@gc - Concurrency Thread Group,配置:

  • Target Concurrency:填写${__property(stepping.threadgroup.target,)},自动同步Stepping Thread Group的当前目标并发数
  • Ramp Up Time:0(由Stepping控制线程启动节奏,无需CTG再做线性增长)
  • Thread Lifetime:设置为360(单位:秒,比每个阶段的5分钟长,避免线程在阶段内提前退出),或填-1(线程直到压测结束才退出)

三、现有配置检查(通用验证点)

看不到你的截图,给你几个关键判断标准:

  • 如果直接用CTG做线性增长(比如Ramp Up设为50分钟,Target设为990,Hold设为5分钟),这是错误的——你的场景是每5分钟跳增90,不是均匀增长,线性增长不符合需求。
  • 如果用了Stepping+CTG组合,检查Stepping的参数是否和上述一致,尤其是新增间隔、次数、最后保持时间。
  • 你线程组下的HTTP Cache Manager、HTTP Cookie Manager、Uniform Random Timer、11个HTTP Request的层级是正确的,这些元件放在线程组下没有问题。

四、额外提醒

  • 压测前先做小范围验证:比如初始90并发运行1分钟,确认请求正常、并发稳定,再逐步测试阶梯增长逻辑。
  • Uniform Random Timer的延迟范围要合理,比如设为0到500毫秒,模拟真实用户的思考间隔,避免请求过于集中。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 23:45:32