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

JMeter实现每5分钟执行请求集的压测场景求助

JMeter实现周期性用户流程压测配置方案

正确组件层级与配置

1. 核心结构

线程组
├─ 循环控制器
│  ├─ 事务控制器(可选但推荐)
│  │  ├─ 搜索商品请求
│  │  ├─ 添加至购物车请求
│  │  └─ 完成支付请求
│  └─ Constant Timer(每组执行后等待)

2. 各组件详细配置

线程组

  • 线程数:1000(对应1000个用户)
  • 启动时间:100秒(均匀启动所有用户,避免瞬间请求过载)
  • 循环次数:1(由内部循环控制器控制执行12组)
  • (可选)若不想计算循环次数,可设为无限,并设置持续时间为3600秒(1小时)

循环控制器

  • 循环次数:12(1小时内每5分钟一组,60/5=12)

事务控制器

  • 勾选「Generate parent sample」(将3个请求合并为一个组样本,便于统计每组的整体耗时)
  • 按顺序放入「搜索商品」「添加至购物车」「完成支付」3个请求,保持业务流程顺序

Constant Timer

  • 延迟时间:300000毫秒(5分钟=300秒=300000毫秒)
  • 注意:必须放在循环控制器内部、事务控制器之后,确保每组请求执行完成后,等待5分钟再启动下一组

解决请求批量执行的优化(可选)

如果不想让1000个用户同时执行同一步骤(比如同时发出搜索请求),可添加以下配置分散请求:

  • 在事务控制器内的每个请求前添加Random Timer,设置「随机延迟范围」为0到10000毫秒(0-10秒),让每个用户的请求时间有微小偏移,避免请求完全集中

之前配置的问题分析

  1. 配置1:Constant Timer位置错误。若计时器放在循环控制器外部或请求前,会导致要么所有循环执行完再等待,要么每次循环先等待再执行请求,不符合「执行完一组后等待5分钟」的逻辑;且未用事务控制器打包流程,容易出现请求分步批量执行的情况。
  2. 配置2、3:Constant Throughput Timer是控制吞吐量(每分钟请求数),而非控制用户的周期性流程。它会尝试让整体请求数达到设定的rpm,无法保证每个用户严格按每5分钟一组的节奏执行流程。
  3. Random Order Controller:仅打乱请求顺序,无法控制执行间隔和流程周期,对当前需求无帮助。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 18:52:36