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

相关推荐
是Dream呀2 天前
时序数据库选型指南:Apache IoTDB企业级解决方案深度解析
apache·时序数据库·iotdb
一个天蝎座 白勺 程序猿2 天前
Apache IoTDB(5):深度解析时序数据库 IoTDB 在 AINode 模式单机和集群的部署与实践
数据库·apache·时序数据库·iotdb·ainode
文人sec3 天前
性能测试-jmeter9-逻辑控制器、定时器压力并发
测试工具·jmeter·性能优化·模块测试
智_永无止境3 天前
Apache Commons Math3 使用指南:强大的Java数学库
apache·math
一只 Lemon3 天前
jquery 文件上传 (CVE-2018-9207)漏洞复现
apache
CesareCheung4 天前
JMeter分布式压力测试
分布式·jmeter·压力测试
测试界清流4 天前
jmeter使用技巧
jmeter
春时似衿里4 天前
jmeter配置数据库连接步骤
数据库·jmeter
新知图书4 天前
JMeter的安装部署
jmeter
程序员杰哥4 天前
什么是Jmeter? Jmeter工作原理是什么?
自动化测试·软件测试·python·测试工具·jmeter·职场和发展·测试用例