正如我們前面所說的,性能測試方法在執(zhí)行性能測試后,將得到一系列性能測試數(shù)據(jù),然后將其編譯成報(bào)表。由于大型網(wǎng)站的復(fù)雜結(jié)構(gòu),用戶從瀏覽器發(fā)送一個(gè)請(qǐng)求,知道數(shù)據(jù)庫完成了操作,如果測試或用戶被報(bào)告,中間有很多鏈接,對(duì)網(wǎng)站的響應(yīng)是緩慢的并且存在性能問題。有必要分析請(qǐng)求經(jīng)驗(yàn)的每一個(gè)環(huán)節(jié),找出性能瓶頸可能在哪里,并找出問題所在。
檢查一個(gè)網(wǎng)站的性能瓶頸并檢查一個(gè)程序的性能瓶頸基本上是相同的。檢查請(qǐng)求處理的各個(gè)環(huán)節(jié)的日志,分析哪些鏈接不合理,超出預(yù)期;然后檢查監(jiān)控?cái)?shù)據(jù),分析影響內(nèi)存、磁盤、網(wǎng)絡(luò)或CPU性能的主要因素,代碼問題不合理或不合理。
根據(jù)網(wǎng)站的層次結(jié)構(gòu),性能優(yōu)化可分為三類:Web前端性能優(yōu)化、應(yīng)用服務(wù)器性能優(yōu)化、存儲(chǔ)服務(wù)器性能優(yōu)化。
讓我們來談?wù)刉eb前端性能優(yōu)化。一般來說,Web前端是指網(wǎng)站業(yè)務(wù)邏輯的一部分,包括瀏覽器加載、Web視圖模型、圖片服務(wù)、CDN服務(wù)等。主要的優(yōu)化手段是優(yōu)化瀏覽器訪問、使用反向代理、CDN等。
瀏覽器訪問優(yōu)化主要是通過減少HTTP請(qǐng)求、使用瀏覽器緩存、啟用壓縮、頁面頂部的CSS、頁面底部的JavaScript、減少Cookie的傳輸?shù)任宸N手段。
HTTP協(xié)議是一個(gè)無狀態(tài)的應(yīng)用層協(xié)議,這意味著每個(gè)HTTP請(qǐng)求都需要建立一個(gè)通信鏈路并進(jìn)行數(shù)據(jù)傳輸,并且在服務(wù)器端,每個(gè)HTTP都需要啟動(dòng)一個(gè)單獨(dú)的線程來處理這些通信和服務(wù)的開銷。非常高,可以減少HTTP請(qǐng)求的數(shù)量,以提高訪問性能。
減少HTTP的主要手段包括合并CSS、合并JavaScript和合并圖片。一旦瀏覽器需要被一起訪問,JavaScript和CSS就被合并到一個(gè)文件中,這樣瀏覽器只需要一個(gè)請(qǐng)求。圖片也可以被合并,多個(gè)圖片被合并成。一個(gè)。如果每個(gè)圖片具有不同的超鏈接,則可以通過CSS偏移響應(yīng)來構(gòu)建鼠標(biāo)點(diǎn)擊操作的不同URL。
對(duì)于網(wǎng)站,CSS、JavaScript、徽標(biāo)、圖標(biāo)和其他靜態(tài)資源文件具有較低的更新頻率,并且這些文件幾乎都是每個(gè)HTTP請(qǐng)求所必需的,并且可以緩存在瀏覽器中。
該文件在服務(wù)器端進(jìn)行壓縮,在瀏覽器端對(duì)文件進(jìn)行解壓縮,可以有效減少通信傳輸?shù)臄?shù)據(jù)量,文件壓縮率可達(dá)%以上。
瀏覽器將在下載所有CSS之后呈現(xiàn)整個(gè)頁面,因此最好的方法是在頁面頂部放置CSS,并讓瀏覽器盡快下載CSS。另一方面,JavaScript在加載JavaScript后立即執(zhí)行,可能阻止RESA。L頁,導(dǎo)致緩慢的頁面顯示。
一方面,Cookie包含在每個(gè)請(qǐng)求和響應(yīng)中,并且太大的Cookie將嚴(yán)重影響數(shù)據(jù)傳輸,所以需要對(duì)Cookie寫入什么數(shù)據(jù)需要仔細(xì)檢查。
CDN的本質(zhì)仍然是一個(gè)緩存,數(shù)據(jù)緩存最接近用戶,用戶以最快的速度獲取數(shù)據(jù),即所謂的網(wǎng)絡(luò)訪問第一跳。
傳統(tǒng)的代理服務(wù)器是多個(gè)瀏覽器的一方,代理瀏覽器將HTTP請(qǐng)求發(fā)送到Internet,而反向代理服務(wù)器位于Web站點(diǎn)的一側(cè),代理站點(diǎn)Web服務(wù)器接收HTTP請(qǐng)求。
由于傳統(tǒng)的儀式服務(wù)器可以保護(hù)瀏覽器的安全性,反向代理服務(wù)器也具有保護(hù)網(wǎng)站安全的作用。來自Internet的訪問請(qǐng)求必須通過代理服務(wù)器,這相當(dāng)于在Web服務(wù)和可能的網(wǎng)絡(luò)攻擊之間建立障礙。
除了安全功能外,代理服務(wù)器還可以通過配置緩存功能來加快Web請(qǐng)求,當(dāng)用戶首先訪問靜態(tài)內(nèi)容時(shí),靜態(tài)內(nèi)容緩存在反向代理服務(wù)器上,這樣當(dāng)其他用戶訪問靜態(tài)內(nèi)容時(shí),可以直接返回FR。OM反向代理服務(wù)器。
