摘要:一般來說,頁面訪問時(shí)間有一個(gè)的“2-5-8原則”。當(dāng)用戶訪問頁面時(shí):1。當(dāng)他們?cè)?秒鐘內(nèi)得到響應(yīng)時(shí),他們會(huì)感到系統(tǒng)反應(yīng)迅速;2。當(dāng)他們得到2到5秒的響應(yīng)時(shí),他們會(huì)覺得系統(tǒng)的響應(yīng)速度是正常的;3。當(dāng)他們?cè)?-8秒內(nèi)得到響應(yīng)時(shí),他們會(huì)覺得系統(tǒng)的響應(yīng)速度很慢,但可以接受;當(dāng)8秒后仍然沒有收到響應(yīng)時(shí),用戶會(huì)覺得系統(tǒng)很糟糕,選擇離開網(wǎng)站,或者提出第二次請(qǐng)求。對(duì)于一個(gè)網(wǎng)站來說,要想抓住用戶,網(wǎng)站的速度和穩(wěn)定性是非常重要的。
1、 為什么要進(jìn)行性能優(yōu)化?
從上面可以看出,網(wǎng)站前端的用戶體驗(yàn)決定了用戶是否愿意使用網(wǎng)站的功能,而網(wǎng)站的功能決定了用戶是否會(huì)投票否決前端體驗(yàn)。不僅如此,如果前端優(yōu)化得好,不僅可以為企業(yè)節(jié)約成本,還可以因?yàn)橛脩趔w驗(yàn)的提升而為用戶帶來更多的用戶。可以概括為三點(diǎn)
2、 性能時(shí)候是什么時(shí)候?
一般來說,遵循避免過早優(yōu)化的原則,因?yàn)榫W(wǎng)站重發(fā)過程中的成本相對(duì)較高,如網(wǎng)頁開發(fā)工程師、UI、產(chǎn)品、運(yùn)維、后臺(tái)服務(wù)等,所以首先要保證基本功能的完成,然后再考慮優(yōu)化。其次,在發(fā)現(xiàn)性能瓶頸之前不要進(jìn)行優(yōu)化
3、 哪些方面需要優(yōu)化?
在此之前,我們將分析頁面從請(qǐng)求到呈現(xiàn)給用戶的一般流程
在了解了這些流程之后,我們應(yīng)該知道如何優(yōu)化它,對(duì)吧!這是對(duì)的藥:
減少網(wǎng)站使用的域名數(shù)量(現(xiàn)代瀏覽器基本具備并行下載能力),減少DNS查詢時(shí)間。建議一個(gè)網(wǎng)站至少使用2個(gè)域名,但不超過4個(gè)域名來提供資源
本地存儲(chǔ)(本地存儲(chǔ))靜態(tài)資源打包,啟用gzip壓縮(保存響應(yīng)流量)cookie隔離(保存請(qǐng)求流量)使用CDN加速(訪問近的服務(wù)器)
合理設(shè)置HTTP緩存:Etag和cache-control使HTTP/2(多路復(fù)用,并行加載)優(yōu)化數(shù)據(jù)庫查詢部署負(fù)載平衡
使用CSS3實(shí)現(xiàn)圖像,Base64(減少請(qǐng)求數(shù))延遲(延遲)加載/異步(異步)加載小圖標(biāo)依賴于優(yōu)化解析HTML、CSS和JS以刪除無用的HTML,CSS和JS優(yōu)化_次屏幕時(shí)間:后腳本位置、圖像壓縮、延遲加載。