Apache JMeter 3.1压力测试监控服务器数据(cpu、内存、磁盘io等)

Apache JMeter 3.1压力测试

  • [Apache JMeter 3.1压力测试监控cpu、内存情况](#Apache JMeter 3.1压力测试监控cpu、内存情况)
    • [1.下载Apache JMeter 3.1](#1.下载Apache JMeter 3.1)
      • [1.1 添加线程组](#1.1 添加线程组)
      • [1.2 添加http请求](#1.2 添加http请求)
      • [1.3 增加http请求头设置](#1.3 增加http请求头设置)
      • [1.4 添加csv配置](#1.4 添加csv配置)
      • [1.5 添加测试结果监控配置](#1.5 添加测试结果监控配置)
    • [2. 监控插件下载](#2. 监控插件下载)
    • [3. 服务端插件下载并启动](#3. 服务端插件下载并启动)
      • [3.1 下载](#3.1 下载)
      • [3.2 解压并启动](#3.2 解压并启动)
      • [3.3 增加服务器配置监控](#3.3 增加服务器配置监控)
    • [4. 查看执行结果](#4. 查看执行结果)
    • [5. 非GUI模式测试](#5. 非GUI模式测试)

Apache JMeter 3.1压力测试监控cpu、内存情况

监控服务器CPU、内存、磁盘、网络等相关资源需要使用3.1版本并使用以下插件

客户端:JMeterPlugins-Standard和JMeterPlugins-Extras

服务端:ServerAgent

1.下载Apache JMeter 3.1

官网链接:https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-3.1.zip

解压安装包,进入 bin 目录,点击 jmeter.bat 启动 Jmeter

1.1 添加线程组

  • 线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。
  • Ramp-up就是每个线程的执行时间间隔,0表示并发
  • 循环次数:每个线程发送请求的次数。如果线程数为 10,循环次数为 100,那么每个线程发送 100 次请求。总请求数为 10*100=1000 。如果勾选了"永远",那么所有线程会一直发送请求,一到选择停止运行脚本。
  • Delay Thread creation until needed:直到需要时延迟线程的创建。
  • 调度器配置:设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远)
    调度器配置参数:
  • 持续时间(秒):测试持续时间,会覆盖结束时间
  • 启动延迟(秒):测试延迟启动时间,会覆盖启动时间

1.2 添加http请求

1.3 增加http请求头设置

1.4 添加csv配置

csv文件内容如下:

1.5 添加测试结果监控配置

2. 监控插件下载

客户端下载地址:Download :: JMeter-Plugins.org

下载完成后解压客户端的两个文件,进入路径JMeterPlugins-Extras\lib\ext,JMeterPlugins-Standard\lib\ext,复制JmeterPlugins-Extras.jar,JmeterPlugins-Standard.jar两个文件,放到JMeter客户端的${jmeter-home}\lib\ext下面

3. 服务端插件下载并启动

3.1 下载

GitHub - undera/perfmon-agent: Server metrics fetching agent, based on SIGAR

3.2 解压并启动

解压ServerAgent放在被压测的服务器上,

windows服务器中启动startAgent.bat,

Linux服务器启动startAgent.sh(注意赋予执行权限)

ServerAgent是用来收集服务器相关性能指标(cpu、memory、tcp等)、以及jmx等metrics信息,然后通过 TCP or UD协议来发送给jmeter。启动后,默认监听4444端口,ServerAgent是一个文本协议,可以使用任何客户端发送/接收metrics数据信息。

3.3 增加服务器配置监控

4. 查看执行结果

5. 非GUI模式测试

  1. 进入jemter工具的bin目录下,输入cmd进行命令行
  1. 编写执行测试计划
xml 复制代码
jmeter -n -t <测试JMX文件> -l <测试报告文件> -e -o <输出文件夹的路径>

**-n:**非GUI模式执行JMeter

**-t :**执行测试文件所在的位置

**-l :**指定生成测试结果的保存文件,.jtl文件格式

**-e:**测试结束后,生成测试报告

**-o:**指定测试报告的存放位置

**测试JMX文件:**测试用的.jmx文件路径

**测试报告文件:**必须是不存在的,否则会报错

**输出文件夹的路径:**手动创建存放报错的文件夹的路径,需要提前创建,每次运行前必须清空,否则会报错

复制代码
 jmeter -n -t  D:\apache-jmeter-3.1\apache-jmeter-3.1\PDF阅读接口测试计划.jmx -l pdf请求压力测试 -e -o  D:\apache-jmeter-3.1\apache-jmeter-3.1\report

3.执行测试计划

4.查看生成的测试计划

进入设置的"输出文件夹的路径",双击index.html

相关推荐
汽车仪器仪表相关领域4 小时前
NHA-604/605汽车排放气体测试仪:00级国标计量|多动力车型兼容|移动/固定双工况|智能联网尾气检测设备
大数据·人工智能·功能测试·安全·汽车·压力测试·可用性测试
lsh曙光17 小时前
Apache服务
apache
Norris Huang2 天前
Icevue:为 Apache Iceberg REST Catalog 打造一个轻量、只读的可视化入口
apache
ajassi20003 天前
AI语音智能体开发日记(三)解决小程序配网中的蓝牙命名与MAC地址获取问题
ai·apache·ai编程
SelectDB技术团队3 天前
当 PostgreSQL 面临性能瓶颈:80TB 电商业务迁移至 Apache Doris 的实践思考
数据库·postgresql·apache
sbjdhjd3 天前
安全初级 | Upload 文件上传漏洞实操
android·经验分享·安全·网络安全·开源·php·apache
阿里云云原生4 天前
RocketMQ-A2A 创新论文入选 ACM FSE,定义 AI Agent 可靠协作新范式
apache·rocketmq
2501_915918414 天前
抓包鹰 抓包会话重放与压力测试,接口回归验证与性能压测的方法
网络协议·计算机网络·网络安全·ios·adb·https·压力测试
汽车仪器仪表相关领域4 天前
XRC-3363 系列高压混合动力汽车救援充电器
大数据·人工智能·功能测试·深度学习·汽车·压力测试