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

相关推荐
财神爷首席大弟子8 小时前
jmeter做跨线程组
jmeter
TracyCoder12312 小时前
Apache Shiro 框架详解
安全·apache·shiro·认证·登录
程序媛_14 小时前
【JMeter】跨线程组传递参数
jmeter
SelectDB14 小时前
Apache Doris 实时更新技术揭秘:为何在 OLAP 领域表现卓越?
数据库·数据分析·apache
__只是为了好玩__20 小时前
Apache http 强制 https
http·https·apache·ssl
云游2 天前
利用外部Postgresql及zookeeper,启动Apache Dolphinscheduler3.1.9
分布式·postgresql·zookeeper·apache·工作流任务调度
Aurora_NeAr3 天前
Apache Iceberg数据湖基础
apache
源图客3 天前
Apache Nutch介绍与部署编译
apache·nutch
FreeBuf_3 天前
Apache组件遭大规模攻击:Tomcat与Camel高危RCE漏洞引发数千次利用尝试
java·tomcat·apache
jingyu飞鸟4 天前
linux系统源代码安装apache、编译隐藏版本号
linux·运维·apache