app每秒并发数_性能测试连载 (38) jmeter 线程数与性能测试的负载模式
????????????點(diǎn)擊跳轉(zhuǎn)>>jmeter--由淺入深學(xué)性能系列
需求
下面有3個(gè)場(chǎng)景,思考一下在jmeter里面如何設(shè)計(jì)
場(chǎng)景1:有一個(gè)項(xiàng)目,500用戶同時(shí)登錄,響應(yīng)時(shí)間能達(dá)到多少場(chǎng)景2:考勤打卡,最大吞吐量能達(dá)到多少(每秒最大能完成多少筆打卡業(yè)務(wù))場(chǎng)景3:銀行業(yè)務(wù),如果需要支持1分鐘內(nèi)完成3000筆取款操作,平均每秒能支持多少用戶同時(shí)取款完成
負(fù)載模式
性能測(cè)試中的負(fù)載模式有兩種。第一種是并發(fā)用戶模式(虛擬用戶模式)
????并發(fā)用戶是指虛擬并發(fā)用戶數(shù),從業(yè)務(wù)角度,也可以理解為同時(shí)在線的用戶數(shù)。從客戶端的角度出發(fā),摸底業(yè)務(wù)系統(tǒng)各節(jié)點(diǎn)能同時(shí)承載的在線用戶數(shù),可以使用該模式設(shè)置目標(biāo)并發(fā),也就是 jmeter 里面的線程數(shù)。
第二種是RPS 模式(吞吐量模式)
??? RPS(Requests Per Second)是指每秒請(qǐng)求數(shù)。RPS 模式即“吞吐量模式”,通過(guò)設(shè)置每秒發(fā)出的請(qǐng)求數(shù),從服務(wù)端的角度出發(fā),直接衡量系統(tǒng)的吞吐能力。
場(chǎng)景設(shè)計(jì)
場(chǎng)景一分析
場(chǎng)景一就是典型的并發(fā)用戶模式。
????我們?cè)谟胘meter設(shè)計(jì)第一種場(chǎng)景的時(shí)候,可以用線程數(shù)去模擬并發(fā)用戶。如下圖
設(shè)置500線程去模擬500用戶;一次迭代表示每個(gè)線程的請(qǐng)求只發(fā)起一次;集合點(diǎn)500表示這500線程將在同一時(shí)間發(fā)起請(qǐng)求
場(chǎng)景二分析
場(chǎng)景二就是典型的吞吐量模式了。
????為什么要設(shè)計(jì)這種模式呢?因?yàn)槲覀兺ǔU劦綁毫Χ际菑目蛻舳巳タ紤]的,也就是先知道并發(fā)用戶數(shù)有多少,然后再去發(fā)起壓力。但是如果不知道并發(fā)數(shù)的話,我們是不是就沒(méi)有辦法去測(cè)試了?所以后來(lái)從阿里衍生出了一個(gè)RPS模式,就是繞過(guò)并發(fā)數(shù)的計(jì)算,直接通過(guò)吞吐量去直接衡量服務(wù)端的性能。吞吐量是衡量系統(tǒng)性能的唯一標(biāo)準(zhǔn)。
????設(shè)計(jì)第二種場(chǎng)景的時(shí)候,我們就需要考慮吞吐量了。我們一般通過(guò)負(fù)載測(cè)試來(lái)找到吞吐量的拐點(diǎn)。
負(fù)載測(cè)試:持續(xù)穩(wěn)定地增加系統(tǒng)的負(fù)載,測(cè)試系統(tǒng)性能的變化,找出系統(tǒng)瓶頸和性能拐點(diǎn)
????如果用rps壓力模式的話,這里所謂的增加系統(tǒng)負(fù)載,就是指的增加每秒請(qǐng)求數(shù)。如下圖rps定時(shí)器
下圖表示我在60s內(nèi)將rps穩(wěn)定的加到400/s
下圖表示監(jiān)聽到的tps數(shù)據(jù)
場(chǎng)景三分析
????場(chǎng)景三其實(shí)也是一種吞吐量模式,但是這里的吞吐量不再是完成的請(qǐng)求數(shù),而是完成的業(yè)務(wù)數(shù),或者叫事物
業(yè)務(wù)時(shí)間
????支撐1分鐘內(nèi)的3000筆取款操作,這里的意思就是1分鐘內(nèi)完成3000筆取款的業(yè)務(wù)。怎么才算完成業(yè)務(wù)呢?事實(shí)上我們一筆取款機(jī)取款業(yè)務(wù)的完成時(shí)間需要從打開頁(yè)面發(fā)起請(qǐng)求開始計(jì)算,到響應(yīng)完成,然后取款機(jī)給出結(jié)果讓用戶看到為止,中間還要包括思考時(shí)間。所以單筆取款業(yè)務(wù)時(shí)間=瀏覽器渲染時(shí)間+連接時(shí)間+思考時(shí)間+服務(wù)處理時(shí)間
平均并發(fā)數(shù)
????我們知道了一分鐘完成3000筆業(yè)務(wù)的需求,業(yè)務(wù)時(shí)間也可以計(jì)算出來(lái)。那么平均并發(fā)數(shù)是什么意思?這里的平均并發(fā)數(shù)指的是平均每秒有多少用戶同時(shí)取款完成,才能達(dá)到這個(gè)一分鐘3000的業(yè)務(wù)量。假設(shè)我的服務(wù)處理+瀏覽器渲染時(shí)間是2s,思考時(shí)間是8s。計(jì)算平均并發(fā)數(shù)的公式如下:
????平均并發(fā)=(單筆業(yè)務(wù)時(shí)間*業(yè)務(wù)總量)/業(yè)務(wù)時(shí)間= (10 X 3000)/60=500/s????也就是說(shuō),平均每秒有500個(gè)用戶取款,能達(dá)到我的預(yù)期業(yè)務(wù)量場(chǎng)景設(shè)計(jì)如下圖
????????點(diǎn)擊下方 閱讀原文,有免費(fèi)的jmeter基礎(chǔ)課程視頻在線觀看哦~
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的app每秒并发数_性能测试连载 (38) jmeter 线程数与性能测试的负载模式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Windows系统版本判断
- 下一篇: MFC列表控件ListControl和树