官术网_书友最值得收藏!

1.2 常見的性能測試指標(biāo)

衡量一個(gè)系統(tǒng)性能的好壞,在性能測試中會使用一些性能指標(biāo)來進(jìn)行分析和描述,以下是一些最常用的性能指標(biāo)。

1.2.1 響應(yīng)時(shí)間

請求或者某個(gè)操作從發(fā)出的時(shí)間到收到服務(wù)器響應(yīng)的時(shí)間的差值就是響應(yīng)時(shí)間。在性能測試中,一般統(tǒng)計(jì)的是事務(wù)處理的響應(yīng)時(shí)間。

圖1-2-1是一次標(biāo)準(zhǔn)HTTP請求可能經(jīng)過的處理路徑和節(jié)點(diǎn),那么響應(yīng)時(shí)間的計(jì)算方式就是所有路徑消耗的時(shí)間和每個(gè)服務(wù)器節(jié)點(diǎn)處理時(shí)間的累加,通常是網(wǎng)絡(luò)時(shí)間+應(yīng)用程序的處理時(shí)間。

圖1-2-1

1.2.2 TPS/QPS

事務(wù)是自定義的某個(gè)操作或者一組操作的集合。例如在一個(gè)系統(tǒng)的登錄頁面,輸入用戶名和密碼,從單擊“登錄”按鈕開始到登錄完成跳轉(zhuǎn)到頁面,并且新的頁面完全加載完成,這一個(gè)操作我們就可以定義為一個(gè)事務(wù)。

TPS是Transaction Per Second的縮寫,即系統(tǒng)每秒能夠處理的交易和事務(wù)的數(shù)量,一般統(tǒng)計(jì)的是每秒處理的事務(wù)數(shù)。

QPS是每秒查詢率(Query Per Second)的縮寫,是對一個(gè)特定的查詢服務(wù)器在規(guī)定時(shí)間內(nèi)所處理流量多少的衡量標(biāo)準(zhǔn)。

1.2.3 并發(fā)用戶

在真實(shí)的用戶操作中,用戶的每個(gè)相鄰操作之間都會有一定的間隔時(shí)間(在性能測試中,我們稱為用戶思考時(shí)間),所以,并發(fā)用戶一般有絕對并發(fā)和相對并發(fā)之分,絕對并發(fā)是指某個(gè)時(shí)間點(diǎn)同時(shí)一起向服務(wù)器發(fā)出請求的并發(fā)用戶數(shù),相對并發(fā)是指一段時(shí)間內(nèi)向服務(wù)器發(fā)出請求的并發(fā)用戶總數(shù)。單就性能指標(biāo)而言,系統(tǒng)的并發(fā)用戶數(shù)是指系統(tǒng)可以同時(shí)承載的、正常使用系統(tǒng)功能的用戶總數(shù)量。

針對并發(fā)用戶我們舉例說明。在京東購物網(wǎng)站上購買一件商品的流程包括登錄,瀏覽商品,把商品加入購物車,去購物車結(jié)算,確認(rèn)商品清單,確認(rèn)收貨地址信息,最后提交訂單去支付。如果200人同時(shí)按照這個(gè)流程購買一件商品,因?yàn)槊總€(gè)人購買商品的步驟有快有慢,所以在同一時(shí)間點(diǎn)向服務(wù)器發(fā)出請求的用戶肯定不會有200人,會遠(yuǎn)遠(yuǎn)小于200人,如果我們假設(shè)為20人,那么上面說的200個(gè)用戶就是相對并發(fā)用戶數(shù),而20個(gè)用戶就是絕對并發(fā)用戶數(shù)。

1.2.4 PV/UV

· PV:Page View的簡寫,即頁面的瀏覽量或者點(diǎn)擊量,用戶每次對系統(tǒng)或者網(wǎng)站中任何頁面的訪問均會被記錄一次,用戶如果對同一頁面進(jìn)行多次訪問,那么訪問量會進(jìn)行累加。PV一般是衡量電子商務(wù)網(wǎng)站性能容量的重要指標(biāo)。PV的統(tǒng)計(jì)可以分為全天PV、每個(gè)小時(shí)的PV以及峰值PV(高峰1小時(shí)的PV)。

· UV:Unique Visitor的簡寫,即指系統(tǒng)的獨(dú)立訪客,訪問系統(tǒng)網(wǎng)站的一臺電腦客戶端會稱為一個(gè)訪客,每天00:00點(diǎn)到次日00:00點(diǎn)內(nèi)相同的客戶端只能被計(jì)算一次。同樣UV的統(tǒng)計(jì)也可以分為全天UV、每個(gè)小時(shí)的UV以及峰值UV(高峰1小時(shí)的UV)。

PV和UV通常是衡量Web網(wǎng)站的兩個(gè)非常重要的指標(biāo),PV/s一般是由TPS通過一定的模型轉(zhuǎn)化為PV的,比如如果把每一個(gè)完整的頁面都定義為一個(gè)事務(wù),那么TPS就可以等同于PV/s。PV和UV之間一般存在一個(gè)比例,PV/UV可以理解為每個(gè)用戶平均瀏覽訪問的頁面數(shù),這個(gè)比值在不同的時(shí)間點(diǎn)會有所波動(dòng),比如雙11電商大促銷時(shí),PV/UV的比重會比平時(shí)高很多。

1.2.5 點(diǎn)擊率

每秒的頁面點(diǎn)擊數(shù)我們稱為點(diǎn)擊率(也就是通常說的hit),該性能指標(biāo)反映了客戶端每秒向服務(wù)端提交的請求數(shù)。通常一個(gè)hit對應(yīng)了一次HTTP請求,在性能測試中,我們一般不發(fā)起靜態(tài)請求(指的是對靜態(tài)資源的請求,比如JS、CSS、圖片文件等),所以hit通常是指的動(dòng)態(tài)請求。在性能測試中,我們之所以不發(fā)起靜態(tài)請求是因?yàn)殪o態(tài)請求一般是可以走緩存,比如CDN等,很多靜態(tài)請求一般都不需要經(jīng)過應(yīng)用服務(wù)器的處理,要么直接走CDN緩存,要么直接請求到Web服務(wù)器就被處理完成了。

1.2.6 吞吐量

吞吐量是指系統(tǒng)在單位時(shí)間內(nèi)處理客戶端請求的數(shù)量。從不同的角度看,吞吐量的計(jì)算方式可以不一樣。

· 從業(yè)務(wù)角度:吞吐量可以用請求數(shù)/s、頁面數(shù)/s等來進(jìn)行衡量計(jì)算。

· 從網(wǎng)絡(luò)角度:吞吐量可以用字節(jié)/s來進(jìn)行衡量計(jì)算。

· 從應(yīng)用角度:吞吐量指標(biāo)反映的是服務(wù)器承受的壓力,即系統(tǒng)的負(fù)載能力。

一個(gè)系統(tǒng)的吞吐量一般與一個(gè)請求處理對CPU的消耗、帶寬的消耗、IO和內(nèi)存資源的消耗情況等緊密相連。

1.2.7 資源開銷

每個(gè)請求或者事務(wù)對系統(tǒng)資源的消耗,用來衡量請求或者事務(wù)對資源的消耗程度,例如對CPU的消耗可以用占用CPU的秒數(shù)或者核數(shù)來衡量,對內(nèi)存的消耗可以用內(nèi)存使用率來衡量,對IO的消耗可以用每秒讀寫磁盤的字節(jié)數(shù)來衡量。在性能測試中,資源的開銷是一個(gè)可以量化的概念,資源的開銷情況對性能指標(biāo)有著重要的影響,我們一般做性能優(yōu)化時(shí),都是盡可能讓每一個(gè)請求或者事務(wù)對系統(tǒng)資源的消耗減少到最小。

主站蜘蛛池模板: 乐亭县| 胶州市| 湖北省| 济阳县| 池州市| 玛沁县| 新宁县| 怀化市| 阳江市| 和平县| 呼玛县| 章丘市| 博白县| 西宁市| 潜山县| 皮山县| 洪江市| 南郑县| 资溪县| 普陀区| 临湘市| 象州县| 凤凰县| 城市| 卢龙县| 邵东县| 高邮市| 依安县| 乡宁县| 额尔古纳市| 逊克县| 余江县| 曲阜市| 团风县| 永定县| 张家界市| 柘城县| 罗江县| 新蔡县| 大荔县| 清徐县|