Jmeter(四十四) - 從入門到精通高階篇 - Jmeter遠端啟動(本地執行+遠端執行)(詳解教程)

巨集哥發表於2021-05-21

1.簡介

  這篇文章其實很簡單,就是為下一篇文章做一個鋪墊,所以巨集哥給小夥伴或童鞋們提前熱身一下。

2.什麼是遠端執行?

  遠端執行,就是指令碼放在本地,執行卻在另一臺電腦上執行,當然,可以是遠端多臺電腦一起執行。最常見的場景就是,跑效能測試的時候,一臺電腦負載不起需要的執行緒時,就需要兩臺或者更多的電腦來啟動執行緒跑測試,執行緒就相當於是虛擬使用者。在網上,通常會說,超過1000個執行緒時,就不要使用一臺電腦跑了,而是選擇使用多臺電腦一起負載。這個說法並不全對,比如,指令碼就寫一條insert語句,往資料庫中插入資料,啟20個執行緒跑,估計你的電腦CPU使用率就要100%了。所以,最終還是要看電腦承受得住否,而不是看多少個執行緒,不同的測試指令碼,對測試機的壓力不一樣。很多時候,做效能測試的時候,為了模擬真實的使用者操作,都會加等待時間。比如使用者登入功能,使用者在輸入使用者名稱和密碼的時候,這個時候,伺服器就是在等待,所以指令碼在這裡就會加一個等待時間。

3.為什麼要遠端執行?

Jmeter 是Java 應用,對於CPU和記憶體的消耗比較大,因此,當需要模擬數以千計的併發使用者時,使用單臺機器模擬所有的併發使用者就有些力不從心,甚至會引起JAVA記憶體溢位錯誤。其實,Jmeter的遠端啟動可以幫助我們解決此問題,通過單個 jmeter 客戶端控制多個遠端的jmeter伺服器,使它們同步的對伺服器進行壓力測試。

4.環境

巨集哥的本地環境,如下:

Jmeter版本:5.1.1,如下圖所示:

系統:Windows 10版本 64位系統(32位的同學自己想辦法哦),如下圖所示:

巨集哥的遠端環境,如下:

Jmeter版本:5.1.1,如下圖所示:

系統:Windows 10版本 64位系統(32位的同學自己想辦法哦),如下圖所示:

5.安裝jmeter

分別在本地和遠端機器上安裝jmeter,這裡巨集哥就不做詳細介紹了,不知道的同學可以參考巨集哥的這篇安裝文章:https://www.cnblogs.com/du-hong/p/12894560.html

6.配置

本地機器:Jmeter安裝路徑的bin下,編輯jmeter.properties檔案,追加如下內容:

# Jmeter遠端啟動:Controller機配置,格式為:“IP1:port1,IP2:port2”,如下只配置了一臺Agent;

remote_hosts=*.*.*.95:1029    

遠端機器:Jmeter安裝路徑的bin下,編輯jmeter.properties檔案,追加如下內容:

# Jmeter遠端啟動:Agent機配置

server_port=1029

server.rmi.localport=1029

備註:若出現埠被佔用,Windows上在dos框輸入“netstat -ano”,檢視埠使用情況,這裡推薦使用新的埠;

7.指令碼檔案

巨集哥為了演示,簡單的錄製了一個訪問度孃的指令碼檔案,如下圖所示:

8.啟動

①本地機器:“執行”→“遠端啟動”,可以看到巨集哥配置的遠端機器的IP及埠,如下所示,選擇這臺機器;

 

②遠端機器:

Jmeter安裝在Windows平臺上:cmd到dos中,進入Jmeter安裝路徑的bin目錄下,執行“jmeter-server”

③檢視本地結果樹,如下圖:

④檢視遠端cmd到dos中,進入Jmeter安裝路徑的bin目錄下,執行“jmeter-server”的視窗,如下圖所示:

至此,遠端啟動執行完畢。

9.小結

1、jmeter安裝在Linux平臺上:進入Jmeter安裝路徑的bin目錄下,執行“./jmeter-server”;

否則會報如下錯誤:“Java.net.ConnectionException: Connection refused:connect”

2、同理如果Jmeter安裝在Linux平臺上:進入Jmeter安裝路徑的bin目錄下,執行“./jmeter-server”;

否則會報如下錯誤:“Java.net.ConnectionException: Connection refused:connect”

   

 3、Jmeter5.2.1,啟動報錯java.io.FileNotFoundException: rmi_keystore.jks

  • 解決方法一:slave的jmeter.properties中,設定server.rmi.ssl.disable=true
    原因:jmeter4.0以上的版本,預設啟用RMI連線的安全通訊,需要建立金鑰庫。所以將SSL禁用即可。

  • 解決方法二:手動生成祕鑰和證照。執行create-rmi-keystore.bat(Windows適用)或create-rmi-keystore.sh(Linux適用)

相關文章