溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

JMeter中本地?zé)o法承載時(shí)怎么辦

發(fā)布時(shí)間:2021-12-07 17:18:16 來(lái)源:億速云 閱讀:179 作者:iii 欄目:網(wǎng)絡(luò)管理

本篇內(nèi)容介紹了“JMeter中本地?zé)o法承載時(shí)怎么辦”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

對(duì)于并發(fā)量很大的需求,如上萬(wàn)并發(fā)量,受到CPU和內(nèi)存的限制,單機(jī)模擬場(chǎng)景是實(shí)現(xiàn)不了的,為了讓JMeter提供更大的負(fù)載能力,須使用它的分布式機(jī)制,即多臺(tái)機(jī)器同時(shí)產(chǎn)生負(fù)載的功能。

特點(diǎn):

1.真實(shí)的性能測(cè)試,不存在網(wǎng)絡(luò)瓶頸問(wèn)題

2.GUI僅限windows平臺(tái),命令行可在linux與windows

3.測(cè)試結(jié)果保存在本地一臺(tái)master上

4.使用這臺(tái)master管理多個(gè)Jmeter Engines,也叫做slave

5.測(cè)試腳本會(huì)被master自動(dòng)發(fā)送到作為負(fù)載生成器的slave,但數(shù)據(jù)文件不會(huì)

在進(jìn)行分布式平臺(tái)測(cè)試的時(shí)候,要最好注意以下幾點(diǎn):

1.master也可以同時(shí)作slave,但要注意負(fù)載適量

2.所有負(fù)載生成器slave上安裝相同的jmeter與jdk

3.防火墻和殺毒軟件要關(guān)閉或過(guò)濾

4.確保所有master與slave在同一個(gè)網(wǎng)段或子網(wǎng),沒(méi)有網(wǎng)絡(luò)延遲

5.master與slave可以是windows或linux,不必全部是同一個(gè)OS,但要開(kāi)放防火墻,否則connect fail

6.腳本使用的數(shù)據(jù)文件(比如CSV)需要單獨(dú)傳到每個(gè)slave,并且腳本中指定的文件路徑要能夠在每個(gè)slave找到該文件,常使用相對(duì)路徑,較方便

7. 確保jmeter可以訪問(wèn)服務(wù)器

8. 確保各個(gè)jmeter版本一致,不同版本可能會(huì)存在協(xié)同問(wèn)題

一、Jmeter分布式執(zhí)行原理:

1、Jmeter分布式測(cè)試時(shí),選擇其中一臺(tái)作為調(diào)度機(jī)(master),其它機(jī)器做為執(zhí)行機(jī)(slave)。

2、執(zhí)行時(shí),master會(huì)把腳本發(fā)送到每臺(tái)slave上,slave 拿到腳本后就開(kāi)始執(zhí)行,slave執(zhí)行時(shí)不需要啟動(dòng)GUI,我理解它應(yīng)該是通過(guò)命令行模式執(zhí)行的。

3、執(zhí)行完成后,slave會(huì)把結(jié)果回傳給master,master會(huì)收集所有slave的信息并匯總。

一、執(zhí)行機(jī)(slave)配置:

1、slave機(jī)上需要安裝Jmeter 和 支持當(dāng)前Jmeter版本的JDK。(有時(shí)在運(yùn)行Jmeter時(shí)會(huì)提示JDK版本過(guò)低)

2、添加環(huán)境變量:JMETER_HOME路徑為bin目錄的上一級(jí)目錄,這樣啟動(dòng)jmeter-server服務(wù)時(shí),就只會(huì)看到Found ApacheJMeter_core.jar

3、啟動(dòng)bin目錄下的:jmeter-server.bat,啟動(dòng)成功如下圖。(jmeter 的安裝路徑不要包含空格,因?yàn)閖meter-server.bat不支持含空格的文件夾路徑。)

JMeter中本地?zé)o法承載時(shí)怎么辦

4、上圖上標(biāo)紅的IP和端口會(huì)在master里配置時(shí)用到。IP就是slave機(jī)器IP,端口默認(rèn)是1099,端口也可以自定義,這里我自定義為1000。

5、多臺(tái)slave的話,重復(fù)1~4步驟就好?! ?/p>

三、調(diào)度機(jī)(master)配置:

1、腳本:簡(jiǎn)單的一個(gè)訪問(wèn)百度的腳本: 

JMeter中本地?zé)o法承載時(shí)怎么辦

2、打開(kāi)Jmeter的bin目錄下jmeter.properties文件,修改如下配置IP和Port是slaver機(jī)的IP以及默認(rèn)的1099端口,一下兩種配置方法都可以。

remote_hosts=172.16.xx.xx, http://172.16.xx.xxx

remote_hosts=172.16.xx.xx:1099, http://172.16.xx.xxx:1099

多臺(tái)slave之前用 "," 隔開(kāi)。

修改如下配置,這里端口我自定義為100:

remote_hosts=10.13.223.202:1000,10.13.225.12:1000

我這配置了2臺(tái),可以看到標(biāo)紅的這個(gè)就是上面截圖slave的IP和Port.

3、打開(kāi)Jmeter,選擇運(yùn)行,有運(yùn)程啟動(dòng)、運(yùn)程全部啟動(dòng)兩個(gè)選項(xiàng):

JMeter中本地?zé)o法承載時(shí)怎么辦

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):

JMeter中本地?zé)o法承載時(shí)怎么辦

b) slave控制臺(tái)信息:

JMeter中本地?zé)o法承載時(shí)怎么辦

5、選擇遠(yuǎn)程啟動(dòng)-->遠(yuǎn)程全部啟動(dòng):

a) master結(jié)果,全部啟動(dòng),我配置了2臺(tái)slave,所以有兩次執(zhí)行結(jié)果:

JMeter中本地?zé)o法承載時(shí)怎么辦

四、自定義端口:

如何自定義slave端口:

1、slave:在slave機(jī)的Jmeter的bin目錄下,找到j(luò)meter.properties文件,修改如下兩個(gè)配置項(xiàng),比如我這里修改為9999:

      server_port=9999

      server.rmi.localport=9999

2、啟動(dòng)slave機(jī)上的jmeter-server.bat端口已經(jīng)修改為:9999

3、master:修改master機(jī)器的jmeter.properties文件:

      remote_hosts

4、重啟jmeter.bat

五、其它說(shuō)明:

1、調(diào)度機(jī)(master)和執(zhí)行機(jī)(slave)最好分開(kāi),由于master需要發(fā)送信息給slave并且會(huì)接收slave回傳回來(lái)的測(cè)試數(shù)據(jù),所以mater自身會(huì)有消耗,所以建議單獨(dú)用一臺(tái)機(jī)器作為mater。

2、參數(shù)文件:如果使用csv進(jìn)行參數(shù)化,那么需要把參數(shù)文件在每臺(tái)slave上拷一份且路徑需要設(shè)置成一樣的,F(xiàn)ilename這里設(shè)定一下。

JMeter中本地?zé)o法承載時(shí)怎么辦

3、每臺(tái)機(jī)器上安裝的Jmeter版本和插件最好都一致,否則會(huì)出一些意外的問(wèn)題。

4、如果想要master也分擔(dān)負(fù)載,讓master自身也執(zhí)行測(cè)試計(jì)劃,需要把master 的 IP 和 端口也寫到配置文件里,在遠(yuǎn)程啟動(dòng)前,也要把master的 jmeter-server.bat運(yùn)行,這樣master也能和其他slave一起執(zhí)行測(cè)試計(jì)劃了。

六、比較

與LoadRunner的異同:

1.都可以實(shí)現(xiàn)分布式負(fù)載,各有優(yōu)劣

2.都支持windows和linux下的slave,但master,jmeter跨平臺(tái),LR不

3.LR可以指定每個(gè)slave生成不同數(shù)量的并發(fā)用戶,jmeter不可

4.jmeter中測(cè)試計(jì)劃使用的數(shù)據(jù)文件不會(huì)隨腳本發(fā)送到slave,而LR可以通過(guò)選擇納入LR管理一起發(fā)送到遠(yuǎn)端slave

“JMeter中本地?zé)o法承載時(shí)怎么辦”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI