【性能测试】性能测试指标推算及压测示例
性能测试指标推算及压测示例
根据提测范围、业务需求推算性能需求和指标(如事务数、并发数等),然后写脚本时可根据此模拟线程数和约束条件,最后执行压测、监控服务器资源、分析监控数据。
一、提测内容:
示例1:每日必办模块。
二、性能需求:
登录:按照每天3千个活跃用户登录,平均在 9: 00-18: 00 这个时间段;
每日必办:每天3千个活跃用户登录,平均时间在9:00-18:00这个时间段,每次登录系统后,用户平均查看2次每日必办,系统需在4秒钟内响应。
三、性能需求指标(推算公式):
由于不同企事业单位业务要求不尽相同,标准也会有所不同,故以下公式仅供参考。
事务名称:每日必办;
(高峰)时段的总时长T(分钟):9*60(分钟)=540分钟;
(高峰)时间段事务数N(次):3000(个)*2(次);
(平均)每秒事务数(Tps)=N/(T*60)=事务数/时间=3000(个)*2(次)/(9 (小时)*(60分钟) *60(秒)) = 0.18 次/每秒;
(高峰)事务数(Tps^)=平均事务数(Tps)*4= 0.18 *4 = 0.74个/每秒;
(平均)并发数(C)=(平均)每秒事务数(Tps)*事务平均响应时长(L)=1;
(高峰)并发数(C^)=(高峰)并发数(C^)*4= 3。 (经典公式:并发用户数峰值 C^=C+3×(C的平方根) 、通用公式:C×影响因子(绝大多数场景,一般为3,影响因子可根据实际情况适当调整,如4, 参考:https://wenku.baidu.com/view/bd85ac4db9d528ea80c77992.html?_wkts_=1674465467659&bdQuery=并发与高峰并发公式))
四、性能需求指标(自动计算):
根据上面公式,设置好表单后,填写左边数值时,自动算出并填充右侧的数值。
五、测试脚本准备(模拟业务场景):
根据上面推算出的高峰并发数,可以设置相应的线程数。
工具:Jmeter 5.4
脚本如下:
测试计划
每日必办线程组 线程数=3 循环次数=1
系统登录事务
登录http请求
思考时间 1
循环控制器 循环次数=永远或足够多的运行次数
每日必办事务
每日必办http请求
监控器
jp@gc - Response Times Over Time
jp@gc - Transactions per Second
聚合报告
察看结果树
六、执行测试:
示例2:查询功能 (注:本示例与上面的示例不是同一功能)
执行压测时,监控结果如下
聚合报告截图如下:
响应时间截图如下:
每秒事务数截图如下:
七、服务器监控:
监控服务器资源使用情况,查看压测时段,服务器资源使用情况是否正常。使用命令:./nmon_x86_64_opensuse12 -F 监控数据存放的路径及文件(如master1.nmon) -s 5 -c 182监控服务器资源使用情况。
监控的CPU、IO数据截图如下:
监控的剩余内存情况截图如下:
主要判断是否存在内存溢出。
本文来自博客园,作者:走在新时代,转载请注明原文链接:https://www.cnblogs.com/zkzhan/p/17060591.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!