在使用Jmeter進(jìn)行性能測試時,如果并發(fā)數(shù)比較大(比如近項(xiàng)目需要支持1000并發(fā)),單臺電腦的配置(CPU和內(nèi)存)可能無法支持,這時可以使用Jmeter提供的分布式測試的功能。
一、Jmeter分布式執(zhí)行原理:
1、Jmeter分布式測試時,選擇其中一臺作為調(diào)度機(jī)(master),其它機(jī)器做為執(zhí)行機(jī)(slave)。
2、執(zhí)行時,master會把腳本發(fā)送到每臺slave上,slave 拿到腳本后開始執(zhí)行,slave執(zhí)行時不需要啟動GUI,我理解它應(yīng)該是通過命令行模式執(zhí)行的。
3、執(zhí)行完成后,slave會把結(jié)果回傳給master,master會收集所有slave的信息并匯總。
二、執(zhí)行機(jī)(slave)配置:
1、slave機(jī)上需要安裝Jmeter,具體如何安裝這里不詳細(xì)介紹了。
2、添加環(huán)境變量:JMETER_HOME=D:B_TOOLSapache-jmeter-2.13,此處為你Jmeter的路徑
3、啟動bin目錄下的:jmeter-server.bat,啟動成功如下圖:
4、上圖上標(biāo)紅的IP和端口會在master里配置時用到。IP是slave機(jī)器IP,端口默認(rèn)是1099,端口也可以自定義,這里我自定義為1000,這個后面會講。
5、多臺slave的話,重復(fù)1~4步驟好。
三、調(diào)度機(jī)(master)配置:
1、腳本:簡單的一個訪問百度的腳本:
2、找到Jmeter的bin目錄下jmeter.properties文件,修改如下配置,IP和Port是slave機(jī)的IP以及自定義的端口(這里端口我自定義為100,后面會講如何自定義):
remote_hosts=10.13.223.202:1000,10.13.225.12:1000
多臺slave之前用","隔開,我這配置了2臺,可以看到標(biāo)紅的這個是上面截圖slave的IP和Port.
3、打開Jmeter,選擇運(yùn)行,有運(yùn)程啟動、運(yùn)程全部啟動兩個選項(xiàng):
4、選擇遠(yuǎn)程啟動-->10.13.225.12:1000
a) master結(jié)果,這里我只啟動了10.13.225.12:1000這一臺slave,所以只有一個結(jié)果(線程數(shù)和循環(huán)次數(shù)都是1):
b) slave控制臺信息: