linux使用JMETER進行分佈式壓力測試

1. 下載jmeter tgz文件   http://jmeter.apache.org/download_jmeter.cgilinux

 

2. 登陸linux服務器,建立jmeter目錄,rz上傳jmetershell

 

3. tar xvf + jmeter tgz文件名apache

 

4. 添加jmeter環境變量    vi /etc/profilevim

增長:JMETER=/data/soft/jmeter/apache-jmeter-3.0   //本身的安裝路徑
CLASSPATH=$CLASSPATH:$JMETER/lib/ext/ApacheJMeter_core.jar:$JMETER/lib/jorphan.jar:$JMETER/lib/logkit-2.0.jar
PATH=$PATH:$JMETER/binwindows

5. source /etc/profile服務器

6. jmeter -v查看是否設置成功網絡

7. 在jmeter目錄建立testplan testresult子目錄分佈式

8. rz上傳jmx腳本到testplan下測試

腳本使用beanshell:(能夠將返回輸出到jmeter.log)ui

prev.setDataEncoding("UTF-8");
String response_data = prev.getResponseDataAsString();
log.error("response_data----------------:"+response_data);

9. 如有host進入/etc/hosts 加入本身的host配置(此過程能夠寫成shell腳本,每次只需執行腳本便可)

hosts文件的做用至關如DNS,提供IP地址到hostname的對應,Linux系統在向DNS服務器發出域名解析請求以前會查詢/etc/hosts文件,若是裏面有相應的記錄,就會使用hosts裏面的記錄

//查看當前host hostname (實際與執行腳本使用的host無關,該命令返回的host是系統啓動時就一直不變的,若要修改,須要修改之後重啓服務器纔會永久生效)

vim /etc/sysconfig/network  系統網絡配置文件   --須要重啓生效,永久性修改。hostname是Linux系統下的一個內核參數,它保存在/proc/sys/kernel/hostname下,可是它的值是Linux啓動時從rc.sysinit讀取的。而/etc/rc.d/rc.sysinit中HOSTNAME的取值來自與/etc/sysconfig/network下的HOSTNAME

/etc/init.d/network restart  修改網絡配置文件後重啓網絡

 

10. jmeter -n -t testplan/comic.jmx -l testResult/result1.jtl執行腳本並生成聚合報告(在jmeter目錄下可以看到jmeter.log或者在testplan目錄下,自行尋找,經過日誌能夠看到出錯的地方)

 

-n表示以nogui方式運行測試計劃

-t表示測試計劃,後面跟測試計劃名稱

-l表示測試結果,後面跟測試結果文件名稱

 

11. sz導出聚合報告,在windows下打開可查看結果

 

分佈式配置:

一、同上面步驟,在新的服務器上配置jmeter及環境變量

二、在控制機上修改bin/jmeter.properties,添加從機的IP及端口(使用-r啓動全部從機)1099是默認的rmi通訊端口

 

# Remote Hosts - comma delimited

remote_hosts=192.168.5.95:1099,192.168.5.103:1099

三、開啓執行腳本機器上的server服務,bin/jmeter-server

四、在控制機執行分佈式命令

jmeter -n -t testplan/comic.jmx -R 10.15.243.53,10.15.230.78 -l testResult/result1.jtl    指定從機IP

jmeter -n -t testplan/comic.jmx -r -l testResult/result1.jtl  啓動全部從機執行腳本

注:如有host一樣也須要修改從機的host文件,不然會出現error

相關文章
相關標籤/搜索