(注意在搭建環(huán)境時(shí)將官方環(huán)境代碼更新到最近版本裁良,避免舊版本的bug帶來(lái)不必要的麻煩衷恭。)
基本要求
比賽需要搭建2/3個(gè)節(jié)點(diǎn),一臺(tái)作為施壓機(jī)堤撵,負(fù)責(zé)發(fā)送服務(wù)請(qǐng)求仁讨,運(yùn)行評(píng)測(cè)任務(wù),其他的作為被壓機(jī)实昨,進(jìn)行環(huán)境準(zhǔn)備洞豁,部署etcd,provider,consumer與對(duì)應(yīng)的agent服務(wù)荒给。通過(guò)不同壓力水平對(duì)系統(tǒng)進(jìn)行評(píng)測(cè)丈挟,獲取QPS來(lái)跑分
本地環(huán)境搭建
搭建施壓機(jī):要求安裝3.6以上版本的Python,與對(duì)應(yīng)的虛擬環(huán)境pipenv锐墙,wrk礁哄,并克隆本地評(píng)測(cè)代碼benchmarker來(lái)提供施壓服務(wù)。
搭建被壓機(jī):docker安裝溪北,并創(chuàng)建.passwd文件寫(xiě)入root密碼桐绒,方便腳本進(jìn)行docker操作;克隆agent-demo代碼之拨,通過(guò)DockerFile生成agent服務(wù)的鏡像茉继;克隆provider,consumer代碼,通過(guò)DockerFile生成services服務(wù)的鏡像
運(yùn)行
在施壓機(jī)或指定的其他機(jī)器上執(zhí)行Mock server蚀乔,模擬天池返回的數(shù)據(jù)
運(yùn)行施壓機(jī)的benchmarker壓測(cè)腳本烁竭,將自動(dòng)連接被壓機(jī),通過(guò)第二步生成的幾個(gè)鏡像吉挣,在被壓機(jī)上分別創(chuàng)建啟動(dòng)了etcd,provider派撕,consumer以及對(duì)應(yīng)agent服務(wù)的docker容器,測(cè)試不同連接數(shù)下的QPS進(jìn)行跑分