背景:
? ? 參考專題绍弟,壓測(cè)業(yè)務(wù)需求分析场梆,本章節(jié)主要是壓測(cè)框架選型對(duì)比莉钙。
? ? 需要在 下面兩種選擇中苛茂,做出抉擇:
master slave
locust? locust
locust boomer?
語言:goland
對(duì)著hello code 擼了三天goland ,覺得可以寫寫基本點(diǎn)代碼族操,開始使用boomer與本身locust做對(duì)比壓測(cè)統(tǒng)計(jì)
壓測(cè)業(yè)務(wù):
? ? DNS 解析 苛坚,因?yàn)槎荚诒緳C(jī),http會(huì)有比較大的IO且不想在本地開個(gè)http service色难,然后可以從dns解析壓測(cè)泼舱,普及下locust 壓測(cè)除http之外的協(xié)議。
一:locust擴(kuò)展支持其它協(xié)議壓測(cè)
? ? 參考文章 http://www.reibang.com/p/1d31771f9bcd
二:locust與boomer對(duì)非HTTP協(xié)議簡(jiǎn)單壓測(cè)
? ? 參考文章 http://www.reibang.com/p/cddbfc7e4979
三:locust與boomer壓測(cè)工具對(duì)比
? ? ? 因?yàn)?goland本地運(yùn)行dns解析到時(shí)候響應(yīng)時(shí)間快于python socket方式枷莉,所以在休眠時(shí)間上設(shè)置上有微小差異娇昙,goland 200ms,python 195ms;本質(zhì)是想要兩種dns解析方式時(shí)間稍微更接近一點(diǎn)
goland goczmq 方式
goland gomq 方式
xiaobindeMacBook-Pro:go_hello xiaobin$ ./b.out
2020/01/08 15:18:39 Boomer is built with gomq support.
2020/01/08 15:18:39 Boomer is connected to master(tcp://127.0.0.1:5557) press Ctrl+c to quit.
locust 方式
基本結(jié)論:
1.locust 官方說的goczmq支持會(huì)更好笤妙,在1000+左右QPS場(chǎng)景表現(xiàn)無基本差異冒掌;
2.在機(jī)器CPU使用差不多負(fù)載情況下,boomer構(gòu)造壓力大大優(yōu)于基于locust本身危喉。
其它情況說明:
因?yàn)楸旧韑ocust是協(xié)程方式宋渔,本機(jī)4核情況下,都啟用了三更slave節(jié)點(diǎn)辜限,相對(duì)對(duì)locust更公平些;單slave沒有嘗試了严蓖,可以樂觀估計(jì)是碾壓薄嫡。