環(huán)境搭建
Java環(huán)境
1建瘫、下載地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html
2凑懂、將壓縮包移動(dòng)到服務(wù)器
3、解壓文件
tar xzvf jdk-8u211-linux-x64.tar.gz
4浸船、配置環(huán)境變量
vim/etc/profile? #環(huán)境變量配置文件
export JAVA_HOME=XXXX/jdk1.8.0_211
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
source /etc/profile? #配置生效
java -version? #驗(yàn)證環(huán)境變量配置結(jié)果
JMeter環(huán)境
1、下載(以JMeter 5.1.1為例)?http://jmeter.apache.org/download_jmeter.cgi
2备埃、將壓縮包移動(dòng)到服務(wù)器
3尼桶、解壓文件
tar xzvf jdk-8u211-linux-x64.tar.gz
4、配置環(huán)境變量
vim /etc/profile? #環(huán)境變量配置文件
export JMETER_HOME=XXXX/apache-jmeter-5.1.1
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
export PATH=$JMETER_HOME/bin:$PATH:$HOME/bin
source /etc/profile? #配置生效
jmeter -v? #驗(yàn)證環(huán)境變量配置結(jié)果
JMeter插件
插件名稱(chēng):jmeter-plugins-manager
存放目錄:\lib\ext
插件功能:JMeterPlugin可以把JMeter生成的jtl文件做出很好的統(tǒng)計(jì)圖搀庶,同時(shí)還支持機(jī)器的cpu拐纱、memory、swap哥倔、disk io和network的監(jiān)控戳玫,是個(gè)不錯(cuò)的插件。
分布式壓力測(cè)試
1未斑、Master機(jī)器配置
????配置Master機(jī)器(若本機(jī)也是壓測(cè)機(jī)咕宿,則需要加上本機(jī)的地址)
????目錄:\apache-jmeter-5.1.1\bin\jmeter.properties
??配置完成后项戴,需要重啟jmeter
2玉掸、Slave機(jī)器配置
????配置Slave機(jī)器
????目錄:/jmeter/apache-jmeter-5.1.1/bin/jmeter.properties
????權(quán)限賦予扯俱,bin目錄賦予執(zhí)行的權(quán)限:
chmod +x -R bin/
????啟動(dòng)salve的jmeter:
sh jmeter-server -Djava.rmi.server.hostname=172.16.1.32
????后臺(tái)啟動(dòng):
nohup ./jmeter-server -Djava.rmi.server.hostname=172.16.1.32 &
3只盹、常見(jiàn)問(wèn)題處理
創(chuàng)建JKS文件
背景:從JMeter 4.0開(kāi)始证薇,RMI的默認(rèn)傳輸機(jī)制將使用ssl忧便。SSL需要密鑰和證書(shū)才能工作佳恬,不使用ssl將存在安全漏洞卷仑。
操作:
1)master主機(jī)點(diǎn)擊創(chuàng)建腳本:\jmeter\apache-jmeter-5.1.1\bin\create-rmi-keystore.bat (linux: sh /jmeter/apache-jmeter-5.1.1/bin/create-rmi-keystore.sh)
2)根據(jù)提示填寫(xiě)寞蚌,直接回車(chē)田巴,最后確認(rèn)輸入y即可
3)將生成的rmi_keystore.jks文件復(fù)制到每一臺(tái)slave的bin目錄下即可
提示找不到系統(tǒng)文件之類(lèi)的或者提示java.rmi.ConnectIOException:non-JRMP server at remote endpoint
在master和salve的jmete.properies中打開(kāi)找到#server.rmi.ssl.disable=false钠糊,給變更成server.rmi.ssl.disable=true(注意是控制器和壓力機(jī)都要更改)。每次變更后都要重新打開(kāi)jmeter+
其他注意事項(xiàng)
1) 控制機(jī)和負(fù)載機(jī)的jdk,jmeter版本都必須一致
2) 控制機(jī)用的插件壹哺,負(fù)載機(jī)上也必須有(可以去ext目錄下對(duì)比)
3) 腳本不需要傳遞到負(fù)載機(jī)抄伍,但是如果有csv等數(shù)據(jù)文件,就必須傳到負(fù)載機(jī)上管宵,而且路徑要寫(xiě)負(fù)載機(jī)的路徑
4截珍、壓力測(cè)試
1)編寫(xiě)測(cè)試腳本
2)配置線程數(shù)
3)啟動(dòng)壓測(cè)(啟動(dòng)任務(wù),單臺(tái)啟停箩朴、全部啟停)
4)測(cè)試結(jié)果查看(根據(jù)實(shí)際需求輸出需要結(jié)果岗喉,已聚合報(bào)告為例)
本次測(cè)試為2臺(tái)施壓機(jī),線程組為5炸庞,循環(huán)次數(shù)為10钱床,兩臺(tái)機(jī)器合計(jì)執(zhí)行100次。聚合報(bào)告如下: