您好,登錄后才能下訂單哦!
1.分布式壓測原理:
使用Master-Slave模式,用master機控制多臺slave負載機,向被測服務器發送請求,從而能夠支持幾千幾萬的較大并發。
master機負責測試腳本的分發、啟動、停止、從slave收集測試結果,等
????
2.環境準備
(1)master和所有的slave都安裝好相同版本的JDK、JMeter,并配置好環境變量
? ? ? ? ?安裝jdk請參考:? ?https://blog.51cto.com/11009785/2376310
? ? ? ? ?安裝JMeter參考:https://blog.51cto.com/11009785/2388386
(2)master和slave可以使用windows和linux,但最好都使用linux
(3)master和slave都在同一網段
3.測試步驟
(1)修改slave配置并啟動jmeter-server
? ? ? ? ?修改jmeter.properties:
? ? ? ? ? ? ? ? -server_port=1234(自定義端口號,避免被占用)
? ? ? ? ? ? ? ? -server.rmi.localport=1234(跟上面設置的端口號一致)
? ? ? ? ? ? ? ? -server.rmi.ssl.disable=true
????????修改jmeter-server:
? ? ? ? ? ? ? ? -RMI_HOST_DEF=-Djava.rmi.server.hostname=192.168.0.106(綁定本機ip)
????????啟動slave機上jmeter bin目錄下的jmeter-server(jmeter-server.bat for windows),記錄ip和port
(2)修改master配置并遠程啟動slave
? ? ? ? ?修改jmeter.properties:
????????????????-server.rmi.ssl.disable=true
? ? ? ? ? ? ? ? -remote_hosts=192.168.0.106:1234(與slave上配置的ip、port對應)
? ? ? ? ? ? ? ? 備注:若有多個slave,使用逗號分隔多個ip、port,如remote_hosts=ip1:port1,ip2:port2? ? ? ??
? ? ? ? ?在master機上,打開測試腳本,啟動-->遠程啟動slave機,可以啟動單個slave或全部啟動
????????????? ? ? ? ? ? ?
? ? ? ? ?可在master上使用聚合報告、查看結果樹等監聽器實時查看slave機的執行情況
4.注意事項
(1)master統計的結果是所有slave的數據之和
? ? ? ? ?分布式測試總樣本數=線程數 x 循環次數 x slave負載機數量
(2)若master和slave無法連接,可能是防火墻的問題,要關閉系統防火墻,如何關閉請查看:
????????? https://blog.51cto.com/11009785/2388623
(3)如果監聽器中沒有返回運行結果,可能是網絡有問題,或者參數文件路徑有問題
???????? 可查看的日志有:slave機jmeter bin目錄下的jmeter-server.log
? ? ? ? ?可參考的文章有:
?????????https://blog.51cto.com/11009785/2388476
?????????https://blog.51cto.com/11009785/2388615
(4)當腳本有依賴文件時,必須要拷貝到slave機相同目錄下(建議jmeter bin目錄,避免出錯)
(5)使用查看結果樹查看時,會發現只有請求,沒有響應的情況,如下圖,是正常的
? ? ? ? ?如有必要,可以設置斷言,這樣即使看不到響應,也能知道請求成功或失敗
????????????????
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。