1. 常用平均并发数计算公式

在这里插入图片描述
PV:(Page View)即页面访问量,每打开一次页面PV计数+1,刷新页面也是。PV只统计页面访问次数。
UV(Unique Visitor),唯一访问用户数,用来衡量真实访问网站的用户数量。

一般用UV统计用户活跃数,用PV统计用户访问页面的频率

1.1 普通计算方法

计算公式:TPS= 总请求数 / 总时间
按照需求所示,在2019年第32周,有4.13万的浏览量,那么总请求数,我们可以认为估算为4.13万(1次浏览都至少对应1个请求)
总请求数 = 4.13 万请求数 = 41300 请求数
总时间:由于不知道每个请求的具体时间,我们按照普通方法,我们可以按照一周的时间进行计算
总时间 = 1天 = 1 * 24 小时 = 24 * 3600 秒
套入公式可得:
TPS = 41300请求数/24*3600秒 = 0.48请求数/秒
结论:按照普通计算方法,我们在测试环境对相同的系统进行性能测试时,每秒能够发送0.48请求就可以满足线上的需要。

1.2 二八原则计算方法

二八原则就是指80%的请求在20%的时间内完成
计算公式 : TPS = 总请求数 80% / (总时间20%)
按照公式进行计算
TPS = 41300 * 0.8请求数 / 2436000.2秒 = 1.91 请求数/秒
结论:按照二八原则计算,在测试环境我们的TPS只要能达到1.91请求数每秒就能满足线上需要。二八原则的估算结果会比平均值的计算方法更能满足用户需求。

1.3 按照业务数据进行计算

业务数据:有的公司会统计一定时间内的所有业务数据,我们可以根据这个业务数据曲线图,统计出最多请求的数量和时间比
例。
曲线图看趋势

在这里插入图片描述
在这里插入图片描述
计算模拟用户正常业务操作(稳定性测试)的并发量:

根据这些数据统计图,可以得出结论:

大部分订单在8点-24点之间,因此系统的有效工作时长为16个小时
从订单数量统计,8-24点之间的订单占一天总订单的98%左右(40474个)
结合二八原则计算公式 : TPS = 总请求数 80% / (总时间20%)

需要在测试环境模拟用户正常业务操作(稳定性测试)的并发量为:

TPS = 40474 * 0.8请求数 / 1636000.2秒 = 2.81 请求数/秒
计算模拟用户峰值业务操作(压力测试)的并发量:
根据这些数据统计图,可以得出结论:
订单最高峰在在21点-22点之间,一小时的订单总数大约为8853个
计算压力测试的并发数:TPS = 峰值请求数/峰值时间 * 系数
需要在测试环境模拟用户峰值业务操作(压力测试)的并发量为:
TPS = 8853 请求数 / 3600秒 * 3(系数) = 7.38 请求数/秒

2. 插件管理包工具

说明:下载jmeter插件管理工具包(可以用此包下载jmeter插件)

2.1 应用步骤

  1. 下载包管理工具jar包
  2. 将包管理工具jar包添加到jmeter中
  3. 下载性能测试常用组件
  4. 下载: https://jmeter-plugins.org/install/Install/
    在这里插入图片描述

在这里插入图片描述

3. 性能测试常用图表及组件

  1. Concurrency Thread Group 线程组
  2. Transactions per Second 每秒事务数
  3. Bytes Throughput Over Time 吞吐量
  4. PerfMon Metrics Collector 性能指标收集器

3.1 Concurrency Thread Group 线程组
说明:阶梯线程组
添加方式:测试计划 --> 线程(用户)–> Concurrency Thread Group

在这里插入图片描述
参数:
重点:
Target Concurrency:目标并发(线程数)
Ramp Up Time:加速时间
Ramp-Up Steps Count:加速步骤计数
Hold Target Rate Time:运行时间
Time Unit:时间单位(分钟或者秒)

了解:
Thread Iterations Limit:线程迭代次数限制(循环次数)
Log Threads Status into File:
将线程状态记录到文件中(将线程启动和线程停止事件保存为日志文件)

3.2 Transactions per Second

说明:每秒完成事务数 场景:统计业务成功率
添加方式:测试计划 --> 线程组–> 监听器–>Transactions per Second

在这里插入图片描述

提示:需要配合事务控制器完成,如果不使用事务控制器,默认1个请求为1个事务

3.3 Bytes Throughput Over Time
说明:查看服务器吞吐流量 单位/字节
添加方式:测试计划 --> 线程组–> 监听器–>Bytes Throughput Over Time

在这里插入图片描述

3.4 PerfMon Metrics Collector

说明:用来监控服务端的性能的工具,包括cpu、内存、磁盘、网络等性能数据
添加方法:线程组->监听器->jp@gc - PerfMon Metrics Collector
注意:使用之前需要在服务器端安装监听服务程序并启动

在这里插入图片描述

监控服务器服务程序:

  1. 下载安装包ServerAgent-2.2.3.zip,链接地址:https://github.com/undera/perfmon-agent
  2. 解压ServerAgent-2.2.3.zip
  3. 启动,如果是windows运行startAgent.bat,如果是linux运行startAgent.sh
  4. 启动这个工具后,jmeter的插件jp@gc - PerfMon Metrics Collector就可以收集服务端的资源使用率,并在jmeter中查看了
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐