Jmeter進行分佈式性能測試

在進行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不支持含空格的文件夾路徑。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章