【Jmeter】Linux上Jmeter的使用及分布式配置
文章推薦指數: 80 %
上传jmeter到linux服务器、解压. cd /data unzip apache-jmeter.5.2.1.zip ... 验证是否安装成功: jmeter -v # 如出现版本号,则安装成功 ...
注册登录问答专栏课程招聘活动发现注册登录首页专栏接口文章详情2【Jmeter】Linux上Jmeter的使用及分布式配置PayneWinn发布于2020-05-19由于一些接口,只能通过服务器访问,不能外网访问,不得已只能在其它服务器上压测一、安装1、安装Java#切换到root用户,该方式安装的为openjdk(建议手动安装jdk)
yuminstalljava2、配置Java环境变量vi/etc/profile在文件最后加入:#setjavaenvironment(通过yum安装的默认路径为:/usr/lib/jvm)
JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk.x86_64
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
exportJAVA_HOMECLASSPATHPATH
#修改/etc/profile之后让其生效
source/etc/profile
#验证java
java-version3、安装jmeter上传jmeter到linux服务器、解压cd/data
unzipapache-jmeter.5.2.1.zip4、Jmeter环境变量vi/etc/profile
#在文件最后添加以下内容:
exportJMETER=/data/apache-jmeter.5.2.1(Jmeter的安装目录)
exportCLASSPATH=$JMETER/lib/ext/ApacheJMeter_core.jar:$JMETER/lib/jorphan.jar:$CLASSPATH
exportPATH=${JMETER}/bin/:${PATH}
#使环境变量生效
source/etc/profile#验证是否安装成功:
jmeter-v
#如出现版本号,则安装成功二、Jmeter配置1、基础配置修改#修改jmeter的bin目录下的user.properties(可以看到请求数据和响应数据,调试通了建议关闭)
jmeter.save.saveservice.output_format=csv
jmeter.save.saveservice.response_data=true
jmeter.save.saveservice.samplerData=true
jmeter.save.saveservice.requestHeaders=true
jmeter.save.saveservice.url=true
jmeter.save.saveservice.responseHeaders=true
jmeter.save.saveservice.encoding=true#其它问题
2、修改句柄限制ulimit-a
ulimit-n655353、修改系统端口分配限制,适用大数量#查看liunx支持的客户端连接端口范围
cat/proc/sys/net/ipv4/ip_local_port_range
#查看端口有没用完netstat-an查看是否有端口在timewait
#调低端口释放后的等待时间,默认为60s,修改为15~30s。
echo15>/proc/sys/net/ipv4/tcp_fin_timeout
#修改tcp/ip协议配置,通过配置/proc/sys/net/ipv4/tcp_tw_reuse,默认为0,修改为1,释放TIME_WAIT端口给新连接使用。
echo1>/proc/sys/net/ipv4/tcp_tw_reuse
#修改ctp/ip协议配置,快速回收socket资源,默认为0.修改为1。
echo1>/proc/sys/net/ipv4/tcp_tw_recycle4、分布式配置调度机(master)和执行机(slave)最好分开,由于master需要发送信息给slave并且会接收slave回传回来的测试数据,所以mater自身会有消耗,所以建议单独用一台机器作为mater1、原理:jmeter通过线程组来驱动多线程运行测试脚本,对被测服务器发起负载,每一个负载机上都能运行多个线程组
2、分布式配置:
(1)调度机修改:在调度机上修改bin/jmeter.properties,添加执行机的IP及端口(使用-r启动所有从机)1099是默认的rmi通信端口,取消server.rmi.ssl.disable=false的中注释并将false改为ture
#RemoteHosts-commadelimited
#负载机改为负载机的ip
remote_hosts=10.10.10.10:1099,10.10.10.11:1099
server.rmi.ssl.disable=true
(2)负载机:修改执行机中jmeter.properties的server_port=1099
#运行jmeter-server
#chmod777jmeter-server
#./jmeter-server
(3)调度机:jmeter-n-ttestplan/comic.jmx-r-ltestresult/result1.jtl启动所有从机执行脚本
三、接口测试1、测试脚本编写1、在windows系统下编写,注意客户端与服务端的版本最好一致2、http请求注意勾选keep-alive3、生成的jmx上传到测试服务器,可在服务器上直接编辑修改并发数量等数值2、运行jmeter-n-t../jmx/composer_order.jmx-l../jtl/06191033_test_1_1033jtl-e-o../report/06191033
-n:非GUI模式执行JMeter
-t:执行测试文件所在的位置及文件名
-r:远程将所有agent启动用在分布式测试场景下,不是分布式测试只是单点就不需要-r
-l:指定生成测试结果的保存文件,jtl文件格式
-e:测试结束后,生成测试报告
-o:指定测试报告的存放位置,-o指定的文件及文件夹,必须不存在,否则执行会失败,对应上面的命令就是resultReport文件夹必须不存在否则报错四、结果分析1、运行结果summary=640000in00:06:17=1697.4/sAvg:1722Min:6Max:43033Err:16807(2.63%)
summary:总数
00:06:17:时间6分17秒
1697.4/s:qps为1697.4/s
Avg:1722:平均响应时间为1722ms
Min:最小响应时间
Max:最大响应时间
Err:错误数量
(2.63%):错误率2、jtl文件可以导出在windows上的jmeter中打开,查看结果树、聚合报告,在文件名后面的浏览按钮点击打开3、Report生成的html文件,包含各种性能数据4、性能监控Zabbix监控系统:cpu负载、内存、网络i/o,磁盘i/o等Promethus:pod等的cpu、mem、NetworkI/O等性能指标性能测试jmeter接口阅读2.5k更新于6月21日赞2收藏1分享本作品系原创,采用《署名-非商业性使用-禁止演绎4.0国际》许可协议PayneWinn19声望3粉丝关注作者0条评论得票数最新提交评论你知道吗?注册登录PayneWinn19声望3粉丝关注作者文章目录跟随宣传栏▲
延伸文章資訊
- 1linux環境下使用jmeter進行分散式測試 - IT人
1、前言熟練使用jmeter進行效能測試的工程師都知道,jmeter的客戶端效能是有點差的。這會導致一個問題,其客戶端的效能損耗會干擾到效能測試的結果, ...
- 2Linux下安裝&執行Jmeter程式- IT閱讀
Jmeter在linux系統中執行需要安裝jdk和Jmeter兩個軟體;. 1、安裝JDK. 先檢查系統是否有安裝jdk,在linux中執行如下命令:java -version 如果返回版本 ...
- 3Linux 透過Command Line 執行JMeter 進行壓力測試 - Soul ...
安裝JMeter 與Command Line 執行. 今天並沒有要介紹如何使用JMeter,只簡單說明在遠端Linux 系統中如何透過命令列執行測試腳本。一開始 ...
- 4Linux環境安裝、運行Jmeter腳本並查看報告 - 台部落
正好最近又在倒騰Jmeter,就先把它裝上。 工具. 服務器:Ubuntu Server 18.04.1 LTS 64bit 連接工具:XShell. 安裝JDK. 因爲是自己服務器,沒什麼特別...
- 5【Jmeter篇】Linux环境下安装部署运行Jmeter - 云+社区- 腾讯云
1、下载安装jmeter,http://jmeter.apache.org/download_jmeter.cgi选.tgz后缀为linux安装包. 2、使用winpc上传已解压的Jmeter包...