Jmeter分布式集群部署

環(huán)境準(zhǔn)備

機(jī)器準(zhǔn)備

系統(tǒng) ip 角色
window10 本地 192.168.18.1 master
centos7 192.168.18.139 slave
centos7 192.168.18.138 slave

說(shuō)明:

  • master機(jī)器放在window上,是方便在本地測(cè)試。你也可以部署在linux上,都是可以的
  • master和slave使用的jmeter版本要一致

部署slave

修改 jmeter.properties (在bin目錄下)配置文件

#設(shè)置端口,默認(rèn)是1099,根據(jù)個(gè)人情況進(jìn)行設(shè)置
#server_port=1099

# 把這個(gè)設(shè)置成true,禁用ssl。這個(gè)默認(rèn)是false,被注釋掉了,打開(kāi)注釋
server.rmi.ssl.disable=true

啟動(dòng)服務(wù)

# 進(jìn)入bin目錄下
./jmeter-server

# 如果啟動(dòng)報(bào)了這個(gè)錯(cuò):An error occurred: Cannot start. localhost.localdomain is a loopback address??梢允褂孟旅婷顔?dòng)
./jmeter-server -Djava.rmi.server.hostname=192.168.18.138
image.png

啟動(dòng)成功后,可以看到endpoint信息。這個(gè)port: 33200每次啟動(dòng)都不一樣。因?yàn)槟壳坝貌坏竭@個(gè)port,所以可以暫時(shí)不改。

如果想使用固定的port,可以修改jmeter.properties


image.png

按照上面部署,把兩個(gè)slave 都部署起來(lái)就行

部署master

同樣是修改jmeter.properties配置

# Remote Hosts - comma delimited
remote_hosts=127.0.0.1,192.168.18.138:1029,192.168.18.139:1029
#remote_hosts=localhost:1099,localhost:2010

# 禁用ssl
server.rmi.ssl.disable=true

設(shè)置remote_hosts。

master節(jié)點(diǎn),本身也可以做為服務(wù),如果你想讓master也做為服務(wù),則master節(jié)點(diǎn)也需要去bin目錄下執(zhí)行

# 啟動(dòng)服務(wù)
./jmeter-server

這里我就不啟動(dòng)了。只用slave節(jié)點(diǎn)測(cè)試

測(cè)試驗(yàn)證

通過(guò)GUI的方式

image.png

打開(kāi)jmeter頁(yè)面。run的時(shí)候選擇一個(gè)節(jié)點(diǎn),也可以start All。

這里我們選擇192.168.18.138機(jī)器


image.png

去138機(jī)器上,看多了這兩行日志

通過(guò)命令的形式啟動(dòng)

# linux上
/root/jmeter/bin/jmeter -n -t test.jmx -R 192.168.18.138:1029,192.168.18.139:1029 -l result.jtl 

# window上
/root/jmeter/bin/jmeter.bat -n -t test.jmx -R 192.168.18.138:1029,192.168.18.139:1029 -l result.jtl 

分布式集群的原理

JMeter分布式執(zhí)行時(shí),選擇其中一臺(tái)作為調(diào)度機(jī)(master),其他機(jī)器作為執(zhí)行機(jī)(slave);master會(huì)在本地編輯好jmx壓測(cè)腳本,執(zhí)行時(shí),master將jmx腳本發(fā)送至slave上,slaver執(zhí)行時(shí)不需要啟動(dòng)jmeter,只需要把jmeter-sever.bat文件打開(kāi)以非GUI形式執(zhí)行;slave執(zhí)行完畢后將結(jié)果回傳給master,并由master進(jìn)行結(jié)果的匯總;簡(jiǎn)單來(lái)說(shuō)能達(dá)到的效果也就是:比如我在JMeter jmx腳本中設(shè)立的線程數(shù)是100,我在本地單機(jī)運(yùn)行就會(huì)產(chǎn)生100次請(qǐng)求。如果我有1臺(tái)master機(jī)器,2臺(tái)slave機(jī)器,那么每次會(huì)向服務(wù)器發(fā)送的請(qǐng)求數(shù)總共就是100*3次。

執(zhí)行期間,result.jtl里面的日志是實(shí)時(shí)更新的。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.先安裝JDK安裝包直接從官網(wǎng)下載,直接用wget命令下載的文件默認(rèn)沒(méi)有同意協(xié)議。所以需要手動(dòng)下載,最好下載一個(gè)...
    陳芝麻爛谷子的事閱讀 1,056評(píng)論 0 2
  • 服務(wù)器分配ip: 說(shuō)明,以下個(gè)人ip,為了便于說(shuō)明部署的方式 基本命令介紹: 文件移動(dòng)命令: 修改配置文件 查看系...
    Jane93閱讀 677評(píng)論 0 0
  • jmeter在做壓測(cè)的時(shí)候有時(shí)候會(huì)因?yàn)椴l(fā)需求大,一臺(tái)機(jī)器內(nèi)存不足以支撐而需要進(jìn)行分布式壓測(cè)!下面記錄的是我怎么部...
    王康健_0124閱讀 1,664評(píng)論 0 0
  • 1.jdk和jmeter環(huán)境搭建 2.分布式原理 注意: 1.master機(jī)和slave機(jī)必須在同一個(gè)網(wǎng)段 2.j...
    Jane_51閱讀 615評(píng)論 0 0
  • 性能測(cè)試過(guò)程中,常常要求并發(fā)數(shù)達(dá)到一個(gè)比較大的值(例如1000+)。當(dāng)單機(jī)配置的CPU與內(nèi)存等資源無(wú)法支撐,就需要...
    粥一樣溫柔閱讀 2,338評(píng)論 0 1

友情鏈接更多精彩內(nèi)容