QPS:Queries Per Second意思是“每秒查詢率”,是一臺(tái)服務(wù)器每秒能夠相應(yīng)的查詢次數(shù),是對(duì)一個(gè)特定的查詢服務(wù)器在規(guī)定時(shí)間內(nèi)所處理流量多少的衡量標(biāo)準(zhǔn)。
TPS是TransactionsPerSecond的縮寫,也就是事務(wù)數(shù)/秒。它是軟件測(cè)試結(jié)果的測(cè)量單位。一個(gè)事務(wù)是指一個(gè)客戶機(jī)向服務(wù)器發(fā)送請(qǐng)求然后服務(wù)器做出反應(yīng)的過程??蛻魴C(jī)在發(fā)送請(qǐng)求時(shí)開始計(jì)時(shí),收到服務(wù)器響應(yīng)后結(jié)束計(jì)時(shí),以此來計(jì)算使用的時(shí)間和完成的事務(wù)個(gè)數(shù),最終利用這些信息來估計(jì)得分??蛻魴C(jī)使用加權(quán)協(xié)函數(shù)平均方法來計(jì)算客戶機(jī)的得分,測(cè)試軟件就是利用客戶機(jī)的這些信息使用加權(quán)協(xié)函數(shù)平均方法來計(jì)算服務(wù)器端的整體TPS得分。
QPS(TPS)= 并發(fā)數(shù)/平均響應(yīng)時(shí)間 或者 并發(fā)數(shù) = QPS*平均響應(yīng)時(shí)間
一個(gè)系統(tǒng)吞吐量通常由QPS(TPS)、并發(fā)數(shù)兩個(gè)因素決定,每套系統(tǒng)這兩個(gè)值都有一個(gè)相對(duì)極限值,在應(yīng)用場(chǎng)景訪問壓力下,只要某一項(xiàng)達(dá)到系統(tǒng)最高值,系統(tǒng)的吞吐量就上不去了,如果壓力繼續(xù)增大,系統(tǒng)的吞吐量反而會(huì)下降,原因是系統(tǒng)超負(fù)荷工作,上下文切換、內(nèi)存等等其它消耗導(dǎo)致系統(tǒng)性能下降。
開始,系統(tǒng)只有一個(gè)用戶,CPU工作肯定是不飽合的。一方面該服務(wù)器可能有多個(gè)cpu,但是只處理單個(gè)進(jìn)程,另一方面,在處理一個(gè)進(jìn)程中,有些階段可能是IO階段,這個(gè)時(shí)候會(huì)造成CPU等待,但是有沒有其他請(qǐng) 求進(jìn)程可以被處理)。隨著并發(fā)用戶數(shù)的增加,CPU利用率上升,QPS相應(yīng)也增加(公式為QPS=并發(fā)用戶數(shù)/平均響應(yīng)時(shí)間。)隨著并發(fā)用戶數(shù)的增加,平均響應(yīng)時(shí)間也在增加,而且平均響應(yīng)時(shí)間的增加是一個(gè)指數(shù)增加曲線。而當(dāng)并發(fā)數(shù)增加到很大時(shí),每秒鐘都會(huì)有很多請(qǐng)求需要處理,會(huì)造成進(jìn)程(線程)頻繁切換,反正真正用于處理請(qǐng)求的時(shí)間變少,每秒能夠處 理的請(qǐng)求數(shù)反而變少,同時(shí)用戶的請(qǐng)求等待時(shí)間也會(huì)變大,甚至超過用戶的心理底線。
聯(lián)系客服