性能測(cè)試:TPS和QPS到底有啥區(qū)別呢?

位置:首頁(yè) / 新聞中心 / 知識(shí)教程

知識(shí)教程 Admin 2024-02-22 11:14:38 776

一、TPS

TPS:Transactions Per Second,意思是每秒事務(wù)數(shù),具體事務(wù)的定義,都是人為的,可以一個(gè)接口、多個(gè)接口、一個(gè)業(yè)務(wù)流程等等。一個(gè)事務(wù)是指事務(wù)內(nèi)第一個(gè)請(qǐng)求發(fā)送到接收到最后一個(gè)請(qǐng)求的響應(yīng)的過(guò)程,以此來(lái)計(jì)算使用的時(shí)間和完成的事務(wù)個(gè)數(shù)。


以單接口定義為事務(wù)為例,每個(gè)事務(wù)包括了如下3個(gè)過(guò)程:


a.向服務(wù)器發(fā)請(qǐng)求


b.服務(wù)器自己的內(nèi)部處理(包含應(yīng)用服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器等)


c.服務(wù)器返回結(jié)果給客戶端


如果每秒能夠完成N次這三個(gè)過(guò)程,tps就是N;


如果多個(gè)接口定義為一個(gè)事務(wù),那么,會(huì)重復(fù)執(zhí)行abc,完成一次這幾個(gè)請(qǐng)求,算做一個(gè)tps。


二、QPS

QPS:Queries Per Second,意思是每秒查詢率,是一臺(tái)服務(wù)器每秒能夠響應(yīng)的查詢次數(shù)(數(shù)據(jù)庫(kù)中的每秒執(zhí)行查詢sql的次數(shù)),顯然,這個(gè)不夠全面,不能描述增刪改,所以,不建議用qps來(lái)作為系統(tǒng)性能指標(biāo)。


三、區(qū)別

如果是對(duì)一個(gè)查詢接口(單場(chǎng)景)壓測(cè),且這個(gè)接口內(nèi)部不會(huì)再去請(qǐng)求其它接口,那么tps=qps,否則,tps≠qps


如果是容量場(chǎng)景,假設(shè)n個(gè)接口都是查詢接口,且這個(gè)接口內(nèi)部不會(huì)再去請(qǐng)求其它接口,qps=n*tps


jmeter聚合報(bào)告中,Throughput是用來(lái)衡量請(qǐng)求的吞吐量,也就是tps,tps=樣本數(shù)/運(yùn)行時(shí)間;我們定義的是tps,不是qps


如果沒有定義事務(wù),會(huì)把每個(gè)請(qǐng)求作為一個(gè)事務(wù)

總結(jié)

QPS是Query Per Second,是數(shù)據(jù)庫(kù)中的概念,每秒執(zhí)行條數(shù)(查詢),被引申到壓測(cè)中來(lái)了,但是不包括插入、更新、刪除操作,所以不建議用qps來(lái)描述系統(tǒng)整體的性能;

建議用tps,這個(gè)t,你可以隨意的定義,可以是一個(gè)接口,也可以是一個(gè)業(yè)務(wù)流程等等。

以上就是“性能測(cè)試:TPS和QPS到底有啥區(qū)別呢?”的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注木子天禾科技其它相關(guān)文章!

以上就是“性能測(cè)試:TPS和QPS到底有啥區(qū)別呢?”的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注木子天禾科技其它相關(guān)文章!

15934152105 掃描微信