13.jmeter性能测试高并发及高频率弱压力及持续高并发

高并发

同一时间有大量请求或用户访问系统,比如春运抢火车票,抢演唱会门票

高并发测试是为了发现系统瓶颈,保证上线稳定,了解系统的最大承载量。

同步定时器实现高并发

同步定时器实现高并发可测试瞬间高负载,比如秒杀/抢购这些瞬时峰值并发

模拟一百名用户同时访问

右键http请求添加-定时器-同步定时器(Synchronizing Timer)

模拟用户组数量尽量可以被线程数整除

下方超时时间尽量不为0,避免出现死等

使用聚合报告查看性能指标

常关注指标,平均响应时间,错误率,吞吐量

平均响应时间越低越好,< 500ms 优秀,< 1s 正常

错误率必须接近0,否则表示系统扛不住

吞吐量越高越好,系统越强

高频率

单位时间内发送极多的请求,持续时间长,比如秒杀持续高频率查询库存

保证系统长期稳定性,发现长时间压测才能暴露的问题,验证吞吐量上限

常数吞吐量定时器实现高频率

一名用户以20QPS(即每秒访问20次)频率发起请求,持续15秒

右键http请求添加-定时器-常数吞吐量定时器(Constant Throughput Timer)

查看聚合报告

高并发与高频率对比

维度 高并发 高频率
关注点 同时在线用户数 单位时间请求次数
JMeter 设置 线程数多 循环多、持续跑
发现问题 瞬间崩溃、超时、限流 内存泄漏、堆积、稳定性差
典型场景 秒杀、抢票、登录峰值 首页刷新、定时任务、长稳测

弱压力测试

低并发、低频率、长时间运行,模拟系统正常、平稳的使用场景,测长期稳定性。

泊松随机定时器实现弱压力测试

随机延迟,模拟实现真实的用户操作节奏

  • Lambda (in milliseconds): 100 这是泊松分布的平均延迟,单位毫秒,代表平均每次请求会额外延迟 100ms。
  • Constant Delay Offset (in milliseconds): 300 这是固定偏移延迟,所有请求都会先加上这 300ms 的基础延迟。
  • 最大延迟:会随机波动(泊松分布特性),但整体围绕 400ms 上下浮动

高斯随机定时器实现弱压力测试

  • Constant Delay Offset(固定延迟)100ms
  • Deviation(偏差值)300ms(随机波动范围)
  • 最大延迟:1000 + 500 = 400ms

泊松随机定时器随机波动更自然,更像用户 "有时快有时慢"

高斯随机定时器大部分延迟接近平均值,极端值较少

10s内50个用户陆续启动,访问十小时

持续高并发 ≈ 高并发 + 高频率 的结合

但更精准的描述是「稳定的高并发 + 持续的高频率」

持续的高并发测试需要使用常数吞吐量定时器,不使用同步定时器,同步定时器会使得请求一波波扎堆,无法实现持续均匀的高流量

五秒内缓慢启动一百个用户,以每分钟一百次请求持续访问一小时

相关推荐
lifewange3 天前
JMeter InfluxDB 后端监听器 全参数详解
jmeter
川石课堂软件测试4 天前
技术分享|JMeter接口与性能测试实战
数据库·功能测试·测试工具·jmeter·单元测试·postman·prometheus
弹简特4 天前
【精通JMeter接口测试】03-JMeter 接口测试持续集成踩坑记:jtl 转 Allure 报告、Jenkins 定时执行、CSP 样式劫持全解决
jmeter·自动化·jenkins
晨+燕4 天前
JMeter中如何定位到某个具体的类来自于哪个jar包
python·jmeter·jar
_周游6 天前
【软件测试】使用JMeter进行压力测试_2
jmeter·压力测试
你这个想法好7 天前
深度解析 JMeter 性能测试:从插件安装到,“阶梯线程组”下,“仅一次控制器”失效的解决方案
jmeter
_周游7 天前
【软件测试】使用JMeter进行压力测试_1
测试工具·jmeter·压力测试
U盘失踪了8 天前
JMeter 线程组
jmeter
Xiaoweidumpb10 天前
JMeter 压测实战全链路(三):登录接口压测实战・验证码+账号密码+登录全流程
测试工具·jmeter