Jmeter进行分布式性能测试
由于Jmeter本身的瓶頸,當需要模擬數以千計的并發用戶時,使用單臺機器模擬所有的并發用戶就有些力不從心,甚至還會引起JAVA內存溢出的錯誤。要解決這個問題,可以使用分布式測試,運行多臺機器運行所謂的Agent來分擔JMeter自身的壓力,并借此來獲取更大的并發用戶數,但是需要進行相關的一些修改,具體如下。
1.安裝?JMeter,并確定其中一臺機器作為?Controller,其他的機器作為?Agent。然后運行所有?Agent?機器上的JMeter-server.bat文件——假定我們使用兩臺機器?192.168.0.11?和?192.168.0.12?作為?Agent;?(Agent機器上必須安裝jdk,并設置環境變量)???
2.在Controller?機器的?%JMeter_home%/bin下,編輯?JMeter.properties?中“remote_hosts=127.0.0.1”。其中的?127.0.0.1?表示運行?JMeter?Agent?的機器,這里需要修改為
“remote_hosts=192.168.0.11:1099,192.168.0.12:1099”——其中的?1099為端口號。???
3.啟動controller機器上的jmeter.bat,選擇菜單Run中“Remote?Start”中的192.168.0.11:10099和192.168.0.12:1099來運行Agent。???
4.?有時代理的機器太少,仍不能滿足需要,則需要將作為Controller的電腦也當作Agent,則同樣需要修改JMeter.properties文件,將Controller的IP地址寫入。這時,需要打先打開Controller電腦中JMeter下bin目錄下的jmeter-server.bat,然后再打開JMeter.bat,此時,進入Run?->?Remote?Start菜單,可以看到Controller也作為遠程機器進行運行。?
當遠程訪問時,會看到控制臺上打印出一行:Starting?the?test?on?host?[ip]:1099?@....,遠程執行結束,會打印一行:Finished?the?test?on?host?[ip]:1099?@...。?
常見問題:?
1、確定在controller機器上安裝jdk,版本和jmeter一致,配置環境變量:Java_home等?
???在Agent機器上安裝jdk,配置環境變量:Java_home和JMeter_home?2、Agent機器啟動Jmeter_server.bat時,后臺提示:"could?not?find?ApacheJmeter_core.jar"?
解決方法:這個是開始沒有找到ApacheJmeter_core.jar,后來去JMETER_HOME目錄下去查找,最后找到了,如果不希望看到Could?not?find的字樣,需要添加環境變量JMETER_HOME,路徑為bin目錄的上一級目錄,這樣啟動jmeter-server服務時,就只會看到Found?ApacheJMeter_core.jar。?3、Jmeter分布式控制過程中,各個Agent啟動的線程數等于線程組中的配置,
不是均分線程組中的配置?
4.?Jmeter安裝目錄不要放在例如:C:/Program?Files/**,因為jmeter-server.bat不支持含空格的文件夾路徑。
轉載于:https://www.cnblogs.com/Uther/p/5292069.html
總結
以上是生活随笔為你收集整理的Jmeter进行分布式性能测试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信怎么破解看朋友圈
- 下一篇: Codeforces Beta Roun