喺現今嘅數位世界,網站嘅載入速度對於用家體驗同搜索引擎優化(SEO)嚟講係至關重要嘅。一個輕量嘅網站唔單止可以提升用家滿意度,仲可以改善網站喺搜尋引擎嘅排名。有篇文章提到咗一個令人震驚嘅觀點:一個14kB嘅網頁比起15kB嘅網頁,載入速度可以快大約612毫秒,但15kB同16kB之間嘅差別就微乎其微。呢個現象同傳輸控制協議(TCP)嘅慢啟動算法有莫大嘅關係。呢篇文將會解釋點解將網站大小控制喺14kB以內係一個值得追求嘅目標,並深入探討箇中原因。
TCP(Transmission Control Protocol)係用來喺互聯網上可靠傳送數據包嘅一種協議,通常同IP(互聯網協議)一齊使用,稱為TCP/IP。當瀏覽器向伺服器要求載入網站、圖片或者樣式表(CSS)時,佢會用HTTP協議,而HTTP係建基於TCP之上。一個HTTP請求通常由多個TCP數據包組成。TCP慢啟動算法嘅作用係確保數據傳輸唔會一開始就過載網絡。喺連線初期,伺服器會先傳送一個安全嘅數據量,通常係10個TCP數據包。每個TCP數據包嘅最大大小係1500字節,但減去40字節嘅包頭後,實際可用嘅係1460字節。10個數據包加起來就係14600字節,約等於14kB。因此,如果網站嘅關鍵內容可以壓縮到14kB以內,就能夠喺第一次傳輸時完成載入,節省一次同伺服器之間嘅往返時間(RTT,Round-Trip Time)。
往返時間取決於網絡延遲(latency),即數據包從源頭到目的地所需嘅時間。延遲受多種因素影響,例如用家同伺服器之間嘅物理距離、網絡擁堵同連線類型(例如光纖、Wi-Fi或者衛星網絡)。以衛星網絡為例,延遲可能高達600毫秒甚至更多,因為數據要傳到地球軌道上嘅衛星再傳回地面。如果網站大小超過14kB,伺服器需要等待額外嘅往返確認,導致載入時間顯著增加。相反,如果網站喺14kB以內,瀏覽器可以喺第一次傳輸後即刻開始渲染內容,令用家感覺網站載入得更快。
要達到14kB嘅目標,網站開發者需要喺設計同內容上作出取捨。文章提到,14kB嘅限制包括壓縮後嘅數據,實際上未壓縮嘅數據可能達到50kB左右,呢個容量已經相當慷慨。試想一下,阿波羅11號嘅導航電腦只有72kB嘅記憶體,但已經足夠將人類送上月球!要實現輕量網站,開發者需要剔除唔必要嘅元素,例如自動播放嘅影片、彈出窗口、追蹤腳本、社交媒體按鈕同複雜嘅JavaScript同CSS框架。通過簡化設計同優化資源,例如使用壓縮圖片同內聯關鍵CSS同JavaScript,網站可以喺保持功能嘅同時大幅減少數據量。
即使無法將整個網站壓縮到14kB以內,呢個原則仍然有實際應用價值。開發者可以確保前14kB嘅數據包含最關鍵嘅內容,例如基本嘅HTML結構、關鍵CSS同首段文字,畀瀏覽器可以快速渲染出有意義嘅頁面。呢種「漸進式渲染」技術可以畀用家喺等待其他資源載入之前,就已經開始同網站互動。文章亦提到,HTTP/2同QUIC等新協議可能改變慢啟動嘅行為,但14kB仍然係一個有用嘅參考標準,因為佢同TCP嘅初始窗口大小密切相關。
總括嚟講,保持網站小於14kB唔單止係技術挑戰,仲係對用家體驗嘅承諾。通過減少不必要嘅內容同優化資源,開發者可以打造更快、更高效嘅網站,畀用家同搜索引擎留下好印象。想了解更多,請瀏覽:https://endtimes.dev/why-your-website-should-be-under-14kb-in-size/