locust和jmeter使用對(duì)比(一)

  1. 腳本
    locust使用寫腳本的方式,方便對(duì)于python有一定基礎(chǔ)的人,可以隨著自己的想法進(jìn)行腳本的編寫
    jmeter通過可視化工具,填寫后保存。上手難度低,適合所有人員。
  2. 運(yùn)行
    locust有兩種啟動(dòng),一種通過web模式控制,還有一種通過命令行控制
    jmeter有兩種啟動(dòng),一種通過可視化工具控制,還有一種也是通過命令行控制
  3. 調(diào)試
    locust腳本編寫時(shí),幾乎無調(diào)試方式,只能靠運(yùn)行查看,不方便
    jmeter腳本編寫時(shí),使用查看結(jié)果樹就能查看到具體的結(jié)果
  4. 分布式
    locust無論是否使用web,分布式執(zhí)行指令即可,可以按照分布機(jī)的情況,控制分布worker的數(shù)量。
    jmeter分布式命令行模式控制稍繁瑣,可視化界面需要配置文件中指定機(jī)器,而且https互通時(shí),還需要互相傳遞秘鑰。
    綜上,jmeter可以指定運(yùn)行的機(jī)器,但是需要配置。locust被動(dòng)接受運(yùn)行機(jī)器,但是當(dāng)一個(gè)機(jī)器斷開后,不會(huì)重新分配。分布方法都還可以,挺簡單。
  5. 報(bào)告
    locust真的是簡陋,只有tps、響應(yīng)時(shí)間、并發(fā)數(shù)的圖,還有錯(cuò)誤信息,但是80%的信息都包含了,只能滿足可用。
    jmeter可以生產(chǎn)html的報(bào)告,乍一看很強(qiáng)大,很詳細(xì),但是可用的數(shù)據(jù)不多,io使用情況以及少量圖表可以借鑒。
    綜上,報(bào)告都一般,主要的信息都提供了,其余的需要自己匯總和參考。
  6. 運(yùn)行時(shí)
    主要監(jiān)控消耗的內(nèi)存和cpu數(shù)據(jù)(本機(jī)4核cpu),并產(chǎn)出的壓力tps的值

情況一:模擬一個(gè)簡單的接口,請(qǐng)求就返回,單進(jìn)程,平均響應(yīng)時(shí)間非常快

  • locust的web模式:
    非分布式:
    cpu占用最多24%,內(nèi)存占用50M+,最后產(chǎn)生tps 600+
    分布式(3個(gè)):
    cpu占用總和最多70%,內(nèi)存占用總和120M+,最后產(chǎn)出的tps 650+
  • lucust的命令行模式:
    cpu占用最多24%,內(nèi)存占用46M+,最后產(chǎn)生tps 600+
    分布式(3個(gè)):
    cpu占用總和最多70%,內(nèi)存占用總和110M+,最后產(chǎn)出的tps 650+
  • jmeter可視化工具:
    cpu占用44%,內(nèi)存占用1250M+,最后產(chǎn)生tps 900+
  • jmeter命令行:
    cpu占用46%,內(nèi)存占用550M+,最后產(chǎn)生tps 1200+
  • 綜上,當(dāng)前情況下,即響應(yīng)快,需要cpu大量參與的情況,jmeter的命令行,優(yōu)勢(shì)非常明顯,而且占用的內(nèi)存比可視化工具少很多,cpu消耗比locust分布式小一些。

情況二:模擬一個(gè)簡單的接口,請(qǐng)求后等待0.05秒才返回,單進(jìn)程

  • locust的web模式:
    非分布式:
    cpu占用18%,內(nèi)存占用50M+,最后產(chǎn)生tps 19.1
    分布式(3個(gè)):
    cpu占用總和36%,內(nèi)存占用總和120M+,最后產(chǎn)出的tps 19.2
  • lucust的命令行模式:
    cpu占用17%,內(nèi)存占用46M,最后產(chǎn)生tps 19.2
    分布式(3個(gè)):
    cpu占用總和35%,內(nèi)存占用總和110M,最后產(chǎn)出的tps 19.4
  • jmeter可視化工具:
    cpu占用19%,內(nèi)存占用950M+,最后產(chǎn)生tps 19.2
  • jmeter命令行:
    cpu占用12%,內(nèi)存占用370M+,最后產(chǎn)生tps 19.4
  • 綜上,當(dāng)前情況下,即響應(yīng)時(shí)間一般,兩個(gè)工具消耗的cpu相近,內(nèi)存使用jmeter偏高

  1. 寫在最后
    還有很多想比較的地方,待下回分解
    總體推薦使用jmeter,但是期望二次開發(fā),兩者都可以,但是個(gè)人喜歡在locust的基礎(chǔ)上,二次開發(fā)。
?著作權(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),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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