1、在Linux服務器先安裝SDKhtml
一、先從官網下載jdk1.8.0_131.tar.gz,再從本地上傳到Linux服務器java
二、解壓:tar -xzf jdk1.8.0_131.tar.gz,生成文件夾 jdk1.8.0_131apache
三、在/usr/目錄下建立java文件夾,再將 jdk1.8.0_131目錄移動到/usr/java中windows
1)cd /usr/服務器
2)mkdir javaapp
3)mv jdk1.8.0_131 /usr/java分佈式
三、配置java環境變量spa
1)vi /etc/profile3d
2)在最後面增長兩行日誌
export JAVA_HOME=/usr/local/java/jdk1.8.0_131
export PATH=$JAVA_HOME/bin:$PATH
重啓虛擬機後配置纔會生效
3)執行命令:source /etc/profile,無需重啓,配置的環境變量立馬生效
或者執行如下命令(必須是root角色,普通角色沒有權限)
# export JAVA_HOME=/usr/local/java/jdk1.8.0_144
# export PATH=$JAVA_HOME/bin:$PATH
四、查看是否安裝成功,執行命令:java-version
2、安裝Jmeter
一、將本地的Jmeter文件打包成zip文件:apache-jmeter-3.1.zip,再上傳到服務器
二、在服務器解壓縮,生成apache-jmeter-3.1目錄
1)安裝unzip:apt-get install unzip
2)解壓縮:unzip apache-jmeter-3.1.zip
三、建立文件夾mkdir apache-jmeter-3.1
三、將apache-jmeter-3.1目錄放到 /usr/local/apache-jmeter-3.1下
四、配置Jmeter環境變量。vi /etc/profile,再添加以下變量
export JMETER_HOME=/usr/local/apache-jmeter-3.1/apache-jmeter-3.1
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:
$CLASSPATH
export PATH=$JMETER_HOME/bin:$PATH
五、source /etc/profile (讓配置文件立馬生效)
六、查看是否安裝成功,執行命令:jmeter -v
3、接口壓測
一、將本地生成的jmx文件上傳到服務器指定目錄,如:/usr/local/apache-jmeter-3.1/jmx
二、進入該目錄下,輸入命令:# jmeter -n -t Linux_uat_createOrder5bf60s.jmx -l result.jtl,查看結果
jmeter -n -t <testplan filename> -l <listener filename> 示例: jmeter -n -t testplan.jmx -l test.jtl
參數說明:
-n:以NoGUI方式運行腳本
-t:後面接腳本名稱
-l:後面接日誌名稱,保存運行結果
三、查看result.jtl,查看運行結果:
也能夠將result.jtl發送到windows下Jmeter查看:添加聚合報告,在聚合報告中打開該文件:
四、注意:客戶端和服務器的Jmeter版本最好保持一致,否則運行腳本時會報錯。
五、還有另外一種腳本執行指令:
# jmeter -n -t Linux_uat_createOrder5bf60s.jmx -l result.jtl -e -o /usr/local/apache-jmeter-3.1/result
在/usr/local/apache-jmeter-3.1/目錄下要有空的result文件夾,不然會提示錯誤。
指令執行完成後,將result文件夾整個download到本地。文件夾包含:
打開index.html,能夠看到網頁版的結果報告:
詳情請查閱相關資料,暫不贅述。
4、進階壓測
多臺壓測機器分佈式壓測:
舉例以41爲主機,4二、43爲從機,對壓測環境服務器進行壓測。
一、三臺Linux服務器都要安裝相同版本Jmeter,儘可能保證安裝路徑一致;
二、配置41的jmeter.properties,將兩臺從機(4二、43)的IP、端口號配置上:
目錄:/usr/local/apache-jmeter-3.1/apache-jmeter-3.1/bin
配置remote_hosts,去掉前面的註釋符#:
三、在三臺Jmeter機器上放置一樣的jmx腳本,腳本的聚合報告中,設置結果寫入文件路徑:
/usr/local/apache-jmeter-3.1/jmx/logs/createOrderResult${__time(YMD)}${__time(HMS)}.jtl
會將壓測執行結果放入到/usr/local/apache-jmeter-3.1/jmx/logs目錄下,並自動生成帶有日期時間戳的jtl文件:
四、在主機41發起壓測指令前,須要將4二、43兩臺從機啓動:
目錄:/usr/local/apache-jmeter-3.1/apache-jmeter-3.1/bin
指令:./jmeter-server
此時說明從機服務已啓動。
五、在主機41上執行腳本指令:# jmeter -n -t Linux_uat_createOrder8bf60s.jmx -r
參數說明:-r 遠程執行 -> 在Jmter.properties文件中指定的全部遠程服務器
顯示主機41上顯示已開始(41不直接壓測,遠程遙控4二、43進行壓測)
兩臺從機也顯示收到壓測指令,開始壓測:
42機器:
43機器:
主機41上顯示:end of run,說明壓測執行完畢:
執行腳本以後,去目錄/usr/local/apache-jmeter-3.1/jmx/logs下找到生成的jtl文件,下載到本地機器Windows環境下可以使用jmeter聚合報告查看結果,如圖所示: