衡量一個網(wǎng)站的性能有多個指標,DNS解析時間,TCP鏈接時間,HTTP重定向時間,等待服務(wù)器響應(yīng)時間等等,從用戶角度來看,就可以歸結(jié)為該網(wǎng)站訪問速度的快慢。也就是說性能等于網(wǎng)站的訪問速度。
早些年Amazon曾經(jīng)做過一個統(tǒng)計:網(wǎng)頁加載時間每延長1秒鐘,一年將減少16億美元的營收。(16億美元是一個什么概念呢?2015年,百度全年的總營收約100億美元?。?。
鑒于性能的重要性,于是我們便經(jīng)??吹皆S多記錄提升訪問速度的方法的文章:減少http請求,雪碧圖,壓縮文件等等,看了這些文章后,博主了解了一些比較普遍的提升性能的方法,但是還不明白為啥這樣能提升速度呀!
作為一名有志青年,博主認為,不僅要知其然,還要知其所以然。在查閱大量書籍和博文后,終于明白了其中的玄機,特此記錄下來,與大家分享。

接下來,我們首先來深入理解一個瀏覽器與互聯(lián)網(wǎng)的通信過程,然后分析每個過程所占時間的多少,以及哪些過程的時間是可以減少的,再說明通過怎樣的方法可以減少這些時間,以此來縮小網(wǎng)站總的加載時間,提升網(wǎng)站的訪問速度。

從輸入url到瀏覽器開始渲染頁面中間都發(fā)生了什么

互聯(lián)網(wǎng)內(nèi)各網(wǎng)絡(luò)設(shè)備間的通信都遵循TCP/IP協(xié)議,利用TCP/IP協(xié)議族進行網(wǎng)絡(luò)通信時,會通過分層順序與對方進行通信。分層由高到低分別為:應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層。發(fā)送端從應(yīng)用層往下走,接收端從數(shù)據(jù)鏈路層網(wǎng)上走。如圖所示:

  1. 在瀏覽器中輸入url

    網(wǎng)友評論