1. 单机压测
1.1 准备工作 - 1、压力机上配置好JDK - 2、在windows下调试好jmeter脚本,然后上传至压力机上 - 3、进入Jmeter 的bin目录下需要添加执行权限 chmod -R +x ./*
1.2 单机压测步骤 - 1、执行命令:jmeter -n -t pinter.jmx -l result.jtl - -n:no-gui,命令行模式 - -t:jmx脚本路径 - -l:jtl结果文件存放路径
2、概要日志数据解释
+:表示过去10s执行情况
=:表示脚本从开始运行到现在的情况
在Jmeter的bin/jmeter.properties中可修改控制台取样间隔的时间。summariser.interval=10,默认为30秒
2、查看结果报表
方式一:把生成的jtl文件下载下来,在GUI界面的聚合报告里打开,可以展示tps和 应时间等数据
- 方式二:生成html报表 - 1、进入jmeter的bin目录下,修改reportgenerator.properties - 2、修改jmeter.reportgenerator.overall_granularity=1000(设置报表中数据展示间隔1秒,默认值为1分钟) - 3、创建一个存放数据报表的文件夹report - 4、执行命令:jmeter -g result.jtl -o report,会在report下生成数据文件 - -g:指定jtl文件的路径 - -o:指定html报表生成到哪个文件夹下
- 5、执行命令zip -r report.zip report,将文件夹进行压缩
6、下载压缩文件夹,使用浏览器打开index.html
- 分布式压测
3.1 为每台压力机配置主机名 - 1、输入hostname可查看主机名 - 2、永久修改主机名:hostnamectl set-hostname 主机名 - 3、编辑/etc/hosts文件,绑定ip和主机名,格式为192.168.50.144 zhuyaliji - 4、输入reboot,重启压力机之后,主机名生效 - 4.2 分布式测试步骤
1、在每台机器上都部署Jmeter
2、如果是java脚本,将java脚本相关lib包都放在jmeter目录lib/ext下
3、将jmeter的场景文件jmx上传到主jmeter的任意位置,参数文件放到每一台压力机上,存放目录要相同
4、修改jmeter.properties文件,去掉ssl.disable=true前面的注释
5、在每台机器上进入到jmeter的bin目录下,都启动nohup ./jmeter-server &(后台启动jmeter-server服务)
6、在主jmeter的bin目录下,修改jmeter.properties,将其中的remote_hosts修改为作为压力机的两台机器ip,
remote_hosts=127.0.0.1,192.168.0.102
7、在主jmeter的机器上,执行jmeter -n -t pinter.jmx -l result.jtl -r
-r:remote
注意: - 1、如果是http脚本,在controller的机器上有脚本文件即可 - 2、如果是Java脚本,在每一台机器上都得有脚本文件和依赖的jar包 - 3、每台机器的防火墙都要关闭
3、命令行压测问题排查思路 - 1、查看当前目录下的jmeter.log - 2、查看Jmeter中bin目录下的jmeter-server.log - 3、查看生成的.jtl文件 - 4、把jmx文件在GUI模式下执行,在查看结果树当中勾选 仅错误日志,并填写一个文件名(最好是.xml格式)用于记录错误日志
版权归原作者 多测师_郑sir 所有, 如有侵权,请联系我们删除。