Jmeter性能压测 —— 高并发思路

测试场景:模拟双11,百万级的订单量一个物流信息的查询接口。

条件:接口响应时间<150ms以内。10万并发量每秒。

设计性能测试方案

1、生产环境

①10W/S--并发量(架构师/技术负责人提供)

②20台机器(4G*4核配置)

2、性能测试环境

①出于成本考虑,绝大多数公司,是做不到和生产环境一样配置的。有些生产环境有几百台甚至几千台机器,测试环境做不到。

②基准测试 -- 少量的请求,少量的服务器 -- 性能测试 -- 通过理论推导 生产环境性能。

(4G*4核配置)1台 --> 性能指标 -- 推导 --只需要1台与服务器相同配置的机器能完成5000/s并发量即可(类似数学中的同理可得,以此类推)

注意事项:

性能测试项目部署服务器硬件型号 -- 和生产环境一致

3、性能测试用例设计

①生产环境面临并发量100000,服务器20台,平均到每台服务器5000/s,当并发需求=5000/s的时候,并发量要大于等于5000/s才扛得住。

性能指标:

吞吐量(接受发送):>=5000/S(QueryPS -- 查询数据场景(一秒内处理查询请求数量)-- TransactionPS -- 多个操作/设计数据修改的请求)

单位时间(s)-- 处理请求的数量

并发量:5000/s (相对并发:某一个时间段)(绝对并发:同一个时间)

响应时间:接口请求从开始到结束完整时间 -- 150ms

性能测试用例 -- 执行步骤 + 执行结果验证

负载测试 -- 系统承载的极限并发

不断加大并发 -- 直到系统不满足性能需要【性能瓶颈】【拐点】

压力测试(稳定性测试)-- 极限并发情况下,系统能否稳定 指定时间(一般压力测试时间大于12小时)

两个测试的先后顺序:先做压力测试再做负载测试,主要是因为要做压力测试你首先要知道极限并发是多少,负载测试就能知道极限并发。

线程目的:去执行接口调用

模拟总共500线程 --> 慢慢增加 -- 最终达到

只压500线程而不是5000线程的原因是,接口平均访问返回时间为100ms,1秒就有1个线程就可以造成10并发的压力。

所以只需要500个用户,1秒就能达到5000并发的压力。

4、Jmeter用到的插件有

①Stepping Thread Group和loadrunner一样,梯度压测,每次递增可以在Next,add中自己填入参数。

②Jmeter压测实时仪表盘在后端监听器中。Grafana(目前还没研究这个仪表盘,等接口框架都写完再来继续填坑)

③性能测试仪表盘的好处是它有集群监测,可以进行linux的集群监控。


【下面是我整理的2023年最全的软件测试工程师学习知识架构体系图】


一、Python编程入门到精通

二、接口自动化项目实战

三、Web自动化项目实战

四、App自动化项目实战

五、一线大厂简历

六、测试开发DevOps体系

七、常用自动化测试工具

八、JMeter性能测试

九、总结(尾部小惊喜)

生命不息,奋斗不止。每一份努力都不会被辜负,只要坚持不懈,终究会有回报。珍惜时间,追求梦想。不忘初心,砥砺前行。你的未来,由你掌握!

生命短暂,时间宝贵,我们无法预知未来会发生什么,但我们可以掌握当下。珍惜每一天,努力奋斗,让自己变得更加强大和优秀。坚定信念,执着追求,成功终将属于你!

只有不断地挑战自己,才能不断地超越自己。坚持追求梦想,勇敢前行,你就会发现奋斗的过程是如此美好而值得。相信自己,你一定可以做到!

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
筱谙17 分钟前
BES BLE低功耗蓝牙技术实现分析
服务器·网络·网络协议
RisunJan26 分钟前
Linux命令-last(查看用户登录历史)
linux·服务器·网络
断水客43 分钟前
搭建ARM LINUX 内核 QEMU 仿真调试环境
linux·运维·arm开发·嵌入式
fantasy5_543 分钟前
深入理解 Linux 动静态库:制作、原理与加载机制
linux·运维·restful
weixin_307779131 小时前
面向通用矩阵乘法(GEMM)负载的GPU建模方法:原理、实现与多场景应用价值
运维·人工智能·线性代数·矩阵·gpu算力
2301_780789661 小时前
2025年UDP洪水攻击防护实战全解析:从T级流量清洗到AI智能防御
服务器·网络·人工智能·网络协议·安全·web安全·udp
不爱吃糖的程序媛1 小时前
OpenHarmony仓颉文档:全场景应用开发指南
运维·服务器
终端行者1 小时前
Nginx四层负载均衡配置 Stream模块使用
运维·nginx·负载均衡
小程故事多_801 小时前
打破传统桎梏,LLM 让智能运维实现从 “自动化” 到 “自进化”
运维·人工智能·自动化·aigc
oh,huoyuyan1 小时前
火语言 RPA “按住滑块拖动到最右边” 自动化案例
运维·自动化·rpa