分布式運(yùn)行Locust
一旦單臺(tái)機(jī)器不夠模擬足夠多的用戶時(shí)置侍,Locust支持運(yùn)行在多臺(tái)機(jī)器中進(jìn)行壓力測試。
為了實(shí)現(xiàn)這個(gè)喜最,你應(yīng)該在master
模式中使用--master
標(biāo)記來啟用一個(gè)Locust實(shí)例芥永。這個(gè)實(shí)例將會(huì)運(yùn)行你啟動(dòng)測試的Locust交互網(wǎng)站并查看實(shí)時(shí)統(tǒng)計(jì)數(shù)據(jù)。master
節(jié)點(diǎn)的機(jī)器自身不會(huì)模擬任何用戶杰妓。相反藻治,你必須使用--slave
標(biāo)記啟動(dòng)一臺(tái)到多臺(tái)Locustslave
機(jī)器節(jié)點(diǎn),與標(biāo)記--master-host
一起使用(指出master
機(jī)器的IP/hostname
)稚失。
常用的做法是在一臺(tái)獨(dú)立的機(jī)器中運(yùn)行master栋艳,在slave
機(jī)器中每個(gè)處理器內(nèi)核運(yùn)行一個(gè)slave
實(shí)例恰聘。
** !Note **
** master
和每一臺(tái)slave
機(jī)器句各,在運(yùn)行分布式測試時(shí)都必須
要有l(wèi)ocust的測試文件。**
示例
使用master
模式啟動(dòng):
locust -f my_loucstfile.py --master
在每個(gè)slave
中執(zhí)行(使用master
機(jī)器的IP替換192.168.0.14
):
locust -f my_locustfile.py --slave --master-host=192.168.0.14
參數(shù)
--master
設(shè)置locust為master
模式晴叨。網(wǎng)頁交互會(huì)在這臺(tái)節(jié)點(diǎn)機(jī)器中運(yùn)行凿宾。
--slave
設(shè)置locust為slave
模式。
--master-host=X.X.X.X
可選項(xiàng)兼蕊,與--slave
一起結(jié)合使用初厚,用于設(shè)置master
模式下的master
機(jī)器的IP/hostname(默認(rèn)設(shè)置為127.0.0.1)
--master-port=5557
可選項(xiàng),與--slave
一起結(jié)合使用孙技,用于設(shè)置master
模式下的master
機(jī)器中Locust的端口(默認(rèn)為5557)产禾。注意,locust將會(huì)使用這個(gè)指定的端口號(hào)牵啦,同時(shí)指定端口+1的號(hào)也會(huì)被占用亚情。因此,5557會(huì)被使用哈雏,Locust將會(huì)使用5557和5558楞件。
--master-bind-host
=X.X.X.X`
可選項(xiàng),與--master
一起結(jié)合使用裳瘪。決定在master模式下將會(huì)綁定什么網(wǎng)絡(luò)接口土浸。默認(rèn)設(shè)置為*(所有可用的接口)。
--master-bind-port=5557
可選項(xiàng)彭羹,與--master
一起結(jié)合使用黄伊。決定哪個(gè)網(wǎng)絡(luò)端口master
模式將會(huì)監(jiān)聽。默認(rèn)設(shè)置為5557派殷。注意Locust會(huì)使用指定的端口號(hào)毅舆,同時(shí)指定端口+1的號(hào)也會(huì)被占用西篓。因此,5557會(huì)被使用憋活,Locust將會(huì)使用5557和5558岂津。