Jmter简介
JMeter是开源软件Apache基金会下的一个性能测试工具,常用来进行压测,用来验证服务器端的应用程序的性能,验证系统的性能瓶颈。当然jmeter也可以用来进行接口测试,只是大家不常用。
Jmter的安装步骤就不赘述了,网上很多教程,这里我们介绍一下其相关优化配置,因为模拟大并发的场景,如果使用默认的配置,基本达不到压测的要求
Jmeter单机常用配置项
vim reportgenerator.properties
jmeter.reportgenerator.overall_granularity=1000
vim jmeter.properties
summariser.interval=30 //这个表示统计频率
summariser.out=true //是否将统计结果输出到控制台
vim jmeter
{HEAP:="-Xms8g -8g -XX:MaxMetaspaceSize=4096m"}
//这里根据你的机器配置,Xms、Xmx 配置为机器内存的1/2 ~ 2/3
// MaxMetaspaceSize 设置为1-2G差不多了
最后修改添加jmeter环境变量
vim ~/.bash_profile
JMETER=/home/apache-jmeter-5.3/bin
source ~/.bash_profile
单台jmeter 修改好相关配置文件后,即可使用,这个时候我们只需要将jmx文件上传至服务器通过命令
jmeter -n -t test.jmx -l test.jtl -e -o test_report/
测试结果会保存在test_report下,将其中的文件导出,打开html文件即可得到详细的测试报告。 当然jtl 的报告你也可以自己去分析,看你的需要了
Jmeter集群常用配置项
单台机器不管你的配置有多好,如果需要无限制的增加并发数,内存,网络,cpu总归是有上限的。这个时候单机就无法满足我们的需求,这个时候就需要通过集群的方式来增加并发数。
1.1主节点配置
比如目前我有四台机器,1台机器作为调度机(192.168.0.1:1099),另外3台机器作为发压机(192.168.0.2:1099,192.168.0.3:1099,192.168.0.4:1099)
vim jmeter.properties
server.rmi.ssl.disable=true
remote_hosts=192.168.0.2:1099,192.168.0.3:1099,192.168.0.4:1099
1.2从主节点配置
将 从节点远程调用的配置打开
vim jmeter.properties
server.rmi.ssl.disable=true
然后通过命令启动从节点,等待调度器的指令(三台机器都需要执行,使用本机的ip )
jmeter-server -Djava.rmi.server.hostname=192.168.0.2:1099
1.3 启动脚本
启动脚本的时候需要注意,如果test.jmx 压测脚本中存在 一些.cvs的启动数据文件,需要将这些文件上传至 对应的发压机的对应路径,否则会无法执行
jmeter -n -t test.jmx -r -l test.jtl -e -o test_report/
-r 远程执行 , 在Jmter.properties文件中指定的所有远程服务器
总结
网上针对JMeter 相关脚本如何编写,jmeter并发等相关知识点有很多相关文章,这里也不会详细的讲解,有兴趣的可以查一下相关文章。 本系列后续文章会讲解jmeter压测过程中一些相关采坑记录,以及如何分析系统相关的瓶颈,我觉得这才是性能测试的重点
|