更新時(shí)間:2021-08-06 16:54:23 來源:動(dòng)力節(jié)點(diǎn) 瀏覽1401次
在使用Jmeter進(jìn)行性能測(cè)試時(shí),如果并發(fā)數(shù)比較大(比如最近項(xiàng)目需要支持1000并發(fā)),單臺(tái)電腦的配置(CPU和內(nèi)存)可能無法支持,這時(shí)可以使用Jmeter提供的分布式測(cè)試的功能。
(1)Jmeter分布式測(cè)試時(shí),選擇其中一臺(tái)作為調(diào)度機(jī)(master),其它機(jī)器做為執(zhí)行機(jī)(slave)。
(2)執(zhí)行時(shí),master會(huì)把腳本發(fā)送到每臺(tái)slave上,slave拿到腳本后就開始執(zhí)行,slave執(zhí)行時(shí)不需要啟動(dòng)GUI,我理解它應(yīng)該是通過命令行模式執(zhí)行的。
(3)執(zhí)行完成后,slave會(huì)把結(jié)果回傳給master,master會(huì)收集所有slave的信息并匯總。
(1)slave機(jī)上需要安裝Jmeter,具體如何安裝這里不詳細(xì)介紹了。
(2)添加環(huán)境變量:JMETER_HOME=D:B_TOOLSapache-jmeter-2.13,此處為你Jmeter的路徑
(3)啟動(dòng)bin目錄下的:jmeter-server.bat,啟動(dòng)成功如下圖:
(4)上圖上標(biāo)紅的IP和端口會(huì)在master里配置時(shí)用到。IP就是slave機(jī)器IP,端口默認(rèn)是1099,端口也可以自定義,這里我自定義為1000,這個(gè)后面會(huì)講。
(5)多臺(tái)slave的話,重復(fù)1~4步驟就好。
(1)腳本:簡(jiǎn)單的一個(gè)訪問百度的腳本:
2.找到Jmeter的bin目錄下jmeter.properties文件,修改如下配置,IP和Port是slave機(jī)的IP以及自定義的端口(這里端口我自定義為100,后面會(huì)講如何自定義):
remote_hosts=10.13.223.202:1000,10.13.225.12:1000
多臺(tái)slave之前用","隔開,我這配置了2臺(tái),可以看到標(biāo)紅的這個(gè)就是上面截圖slave的IP和Port.
3.打開Jmeter,選擇運(yùn)行,有運(yùn)程啟動(dòng)、運(yùn)程全部啟動(dòng)兩個(gè)選項(xiàng):
4、選擇遠(yuǎn)程啟動(dòng)-->10.13.225.12:1000
a)master結(jié)果,這里我只啟動(dòng)了10.13.225.12:1000這一臺(tái)slave,所以只有一個(gè)結(jié)果(線程數(shù)和循環(huán)次數(shù)都是1):
b)slave控制臺(tái)信息:
5、選擇遠(yuǎn)程啟動(dòng)-->遠(yuǎn)程全部啟動(dòng):
a)master結(jié)果,全部啟動(dòng),我配置了2臺(tái)slave,所以有兩次執(zhí)行結(jié)果:
上面其實(shí)已經(jīng)實(shí)現(xiàn)了Jmeter的分布式測(cè)試,這部分主要介紹下如何自定義slave端口:
(1)slave:在slave機(jī)的Jmeter的bin目錄下,找到j(luò)meter.properties文件,修改如下兩個(gè)配置項(xiàng),比如我這里修改為1888:
server_port=1888
server.rmi.localport=1888
(2)啟動(dòng)slave機(jī)上的jmeter-server.bat,如下圖,端口已經(jīng)修改為:1888
(3)master:修改master機(jī)器的jmeter.properties文件:
remote_hosts=10.13.223.202:1000,10.13.225.12:1888
(4)重啟jmeter.bat,如下圖,端口已經(jīng)變了:
(1)調(diào)度機(jī)(master)和執(zhí)行機(jī)(slave)最好分開,由于master需要發(fā)送信息給slave并且會(huì)接收slave回傳回來的測(cè)試數(shù)據(jù),所以mater自身會(huì)有消耗,所以建議單獨(dú)用一臺(tái)機(jī)器作為mater。
(2)參數(shù)文件:如果使用csv進(jìn)行參數(shù)化,那么需要把參數(shù)文件在每臺(tái)slave上拷一份且路徑需要設(shè)置成一樣的。
(3)每臺(tái)機(jī)器上安裝的Jmeter版本和插件最好都一致,否則會(huì)出一些意外的問題。
以上就是動(dòng)力節(jié)點(diǎn)小編介紹的"JMeter分布式測(cè)試",希望對(duì)大家有幫助,想了解更多可查看JMeter教程。動(dòng)力節(jié)點(diǎn)在線學(xué)習(xí)教程,針對(duì)沒有任何Java基礎(chǔ)的讀者學(xué)習(xí),讓你從入門到精通,主要介紹了一些Java基礎(chǔ)的核心知識(shí),讓同學(xué)們更好更方便的學(xué)習(xí)和了解Java編程,感興趣的同學(xué)可以關(guān)注一下。
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743