压力测试-JMeter常用插件、服务器硬件监控

1.写在前面

在前一篇文章中,我们已经对jmeter有了一个入门的学习。

掌握了JMeter安装、入门、结果分析等内容,详情可查看这里:压力测试-JMeter安装、入门、结果分析

对于jmeter默认的插件,往往不太够,例如,我们响应监控cpu,内存,网络等资源,那我们就得掌握一些常用得插件的使用才行。

那我们今天就来继续深入的学习一下,主要从以下这些内容进行学习:

  • Jmeter常用插件下载及使用
  • 服务器硬件资源监控

好了,废话不多说,直接进入主题了!!!

2.Jmeter常用插件下载及使用

已有内容的分析维度不够:需要加入新的插件

查看应用服务器测试报告中的:

  • TPS、QPS
  • RT
  • 压力机活动线程数

2.1 插件下载

下载地址:jmeter插件,官网上下载plugins-manager.jar。

放入 lib/ext 文件夹里面,然后打开jmeter

在线下载方法如下图所示:

在线安装jmeter插件即可。

2.2 插件介绍:

复制代码

vbscript

复制代码

1 、PerfMon:监控服务器硬件,如CPU,内存,硬盘读写速度等 Allows collecting target server resource metrics 2 、Basic Graphs:主要显示平均响应时间,活动线程数,成功/失败交易数等 Average Response Time 平均响应时间 Active Threads 活动线程数 Successful/Failed Transactions 成功/失败 事务数 3 、Additional Graphs:主要显示吞吐量,连接时间,每秒的点击数等 Response Codes Bytes Throughput Connect Times Latency Hits/s

安装好这些插件后,就可以看到上面这些监听器

2.3 配置插件的监听器

如果可以配置如下三个监听器,就表示插件已经安装成功!执行压力测试,就可以看见压测的每秒事务数、响应时间,活动线程数等压测结果

  • 响应时间:jp@gc - Response Times Over Time
  • 活动线程数:jp@gc - Active Threads Over Time
  • 每秒事务数:jp@gc - Transactions per Second
响应时间:jp@gc - Response Times Over Time(RT)
活动线程数:jp@gc - Active Threads Over Time
每秒事务数:jp@gc - Transactions per Second(TPS)

2.4 性能关键指标分析

1 )RT:响应时间
复制代码

log

复制代码

平均值: 请求响应的平均时间是13ms 中位数: 50%请求响应时间都在10ms之内 90%百分位: 90%的请求都在44ms之内响应结束 95%百分位: 95%的请求都在35ms之内响应结束 99%百分位: 99%的请求都在29ms之内响应结束 最小值: 请求响应最小时间2ms 最大值: 请求响应的最大时间是45ms

2 )压力机活动线程数

压力机活动线程数表明压测过程中施加的压力的情况

3 )TPS: 每秒的事务数

数字愈大,代表性能越好;

4 )QPS: 每秒的查询数量

(1tps >= QPS)

数字愈大,代表性能越好;

5 )吞吐量: 每秒的请求数量

数字愈大,代表性能越好;

3. 服务器硬件资源监控

压测的时候,我们需要实时了解服务器【CPU、内存、网络、服务器Load】的状态如何,哪如何监控服务器的资源占用情况呢?方法有很多种:

  1. 使用shell命令
  2. 使用finalshell
  3. 使用JMeter压测工具perfmon

监控原理:

使用agent代理实现监控

3.1 配置服务端代理

注意:服务器硬件资源的监控,必须在服务端安装serverAgent代理服务,jmeter才能实现监控服务端的cpu、内存、io的使用情况。

ServerAgent下载地址:download

这里以2.2.3版本为例

  • linux
复制代码

bash

复制代码

# 默认启动运行 startAgent.sh 脚本即可 # 服务启动默认 4444 端口,根本连接不上,因此自己创建一个部署脚本文件对此进行部署,且把端口修改为 7879 nohup java -jar ./CMDRunner.jar --tool PerfMonAgent --udp-port 7879 --tcp-port 7879 > log.log 2>&1 & # 赋予可执行权限 chmod 755 startAgent.sh

启用 7879 端口后,服务器的cpu,io,内存使用情况就顺利的监控到了。

  • window

双击启动,默认的端口是 4444

当然我们也可以用上面的方式,自定义端口

3.2 监控CPU:

  • Elapse time:消耗时间
  • Performance Metrics:性能指标

jp@gc PerfMon Metrics Collector

  • idle:CPU空闲
  • iowait:IO等待
  • CPU system:CPU系统占用
  • CPU user:CPU用户占用

3.3 监控网络:

  • 接收字节:byteSrecv【单位:比特、KB、MB】
  • 发送字节:byteSent【单位:比特、KB、MB】
  • 发送(transport):tx
  • 接收(receive):rx

3.4 监控内存:

  • used Perc:每分钟使用内存【单位:字节、KB、MB】
  • free Perc:每分钟未使用内存【单位:字节、KB、MB】

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux 6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 10、开放性测试题,11、安全测试,12、计算机基础

​编辑资料获取方式 :xiaobei_upup,添加时备注"csdn alex"

相关推荐
西岸行者8 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
悠哉悠哉愿意8 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码8 天前
嵌入式学习路线
学习
毛小茛8 天前
计算机系统概论——校验码
学习
babe小鑫8 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms8 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下8 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。8 天前
2026.2.25监控学习
学习
im_AMBER8 天前
Leetcode 127 删除有序数组中的重复项 | 删除有序数组中的重复项 II
数据结构·学习·算法·leetcode
CodeJourney_J8 天前
从“Hello World“ 开始 C++
c语言·c++·学习