如何使用JMeter实现单GET请求多用户(50个)并行调用?
如何用JMeter实现多用户并行调用单个GET API
方法一:使用线程组(最直接的多用户并行方案)
这是实现多用户并行请求的标准方式,步骤如下:
- 添加线程组:右键测试计划 → 添加 → 线程(用户)→ 线程组
- 设置线程数为50(即你需要的并行用户数)
- 设置Ramp-Up时间为0(让所有50个线程同时启动,瞬间发起并行请求)
- 循环次数设为1(如果只需要一次并行调用)
- 在线程组下添加HTTP请求:右键线程组 → 添加 → 取样器 → HTTP请求
- 配置你的GET API的服务器名称或IP、路径,方法选择GET
- 如有需要,在“参数”标签页添加请求参数
- 添加监听器(可选):比如查看结果树、聚合报告,用于查看请求结果和性能数据
方法二:纠正jp@gc Parallel Controller的用法(单线程内并行多请求)
jp@gc Parallel Controller的作用是让单线程内的多个请求并行执行,而非多用户(多线程)并行。要通过它实现50个并行请求,步骤如下:
- 添加线程组:线程数设为1,Ramp-Up时间0
- 在线程组下添加jp@gc Parallel Controller:右键线程组 → 添加 → 逻辑控制器 → jp@gc - Parallel Controller
- 在Parallel Controller下复制粘贴50个相同的HTTP请求,每个请求配置你的GET API信息
- 运行测试后,这个单线程会同时发起50个GET请求(注意这和多用户多线程的场景不同)
方法三:用同步定时器保证严格并行(可选)
如果需要确保50个线程完全同一时刻发起请求,可添加同步定时器消除微小延迟:
- 在HTTP请求的同级(或线程组下)添加同步定时器:右键线程组 → 添加 → 定时器 → 同步定时器
- 设置要等待的线程数为50,所有50个线程会先等待,直到全部就绪后同时发送请求
注意事项
- 确保HTTP请求配置正确,比如API地址、参数、请求头(如需认证,添加HTTP Header Manager配置Authorization等信息)
- 测试前先设置线程数为1,验证单个请求能正常返回结果,再放大到50个线程
内容的提问来源于stack exchange,提问作者QAE
相关产品推荐
相关产品推荐

