
雖然沒有可以保證 Web 具備強大性能的詳細方案,但網站所有者可以使用以下比較好的做法來幫助提高網站速度和可靠性:
優化圖像
由于圖像文件的大小往往大于 HTML 和 CSS 文件,因此,網站加載圖像所需的時間往往比較長。幸運的是,可以通過圖像優化來縮短圖像加載時間,通常包括:降低圖像分辨率和尺寸,以及壓縮圖像文件本身。
限制 HTTP 請求的數量
大多數網頁都要求瀏覽器發出多個 HTTP 請求,才能獲取頁面上的各種資產(包括圖像、腳本和 CSS 文件)。事實上,許多網頁都需要幾十個這樣的請求。每個請求都要往返于托管資源的服務器,這會增加網頁的整體加載時間。
由于存在這些潛在問題,因此,應該盡量減少每個頁面需要加載的資產總數。此外,速度測試有助于確定哪些 HTTP 請求花費的時間比較多。
使用瀏覽器 HTTP 緩存
瀏覽器緩存是一個臨時存儲位置,瀏覽器將靜態文件的副本保存在其中,以便能夠更快速地加載最近訪問過的網頁。開發人員可以指示瀏覽器緩存不經常更改的網頁元素。瀏覽器緩存的說明位于托管服務器的 HTTP 響應的標頭中。這顯著減少了服務器需要傳輸到瀏覽器的數據量,從而縮短了用戶訪問某些常用頁面所需的加載時間。
刪除不必要的 JavaScript 渲染阻塞
網頁可能會加載了不必要的代碼,然后才加載更重要的頁面內容,如此一來增加整體加載時間。這種情況在大型網站上尤為常見,因為許多網頁所有者都是單獨地添加代碼和內容。網頁所有者可以使用 Web 性能工具,來識別性能不佳網頁上那些不必要的代碼。
限制使用外部腳本
對于需要從其他位置加載的任何腳本化網頁元素,例如外部評論系統、CTA 按鈕、CMS 插件或潛在客戶生成的彈出窗口,每次加載頁面時都需要重新加載這些元素。
根據腳本大小,這些腳本可能會降低網頁的加載速度,或導致網頁無法一次性加載完畢,這被稱為“內容跳轉”或“布局偏移”,尤其會讓移動用戶感到沮喪,因為他/她們往往需要滾動頁面才能看到完整的網頁內容。
限制使用重定向
重定向是指將訪問者從一個網頁轉到另一個網頁。重定向會增加幾分之一秒的頁面加載時間,有時甚至需要幾秒鐘。重定向有時是不可避免的,但可能會被過度使用;而且在擁有多個網頁所有者的大型網站上,重定向可能會逐步增加頁面加載時間。網站所有者應該制定明確的重定向使用指南,以及定期掃描重要的網頁,檢查是否存在不必要的重定向。
極簡化 CSS 和 JavaScript 文件
代碼更小化是指刪除計算機理解和執行代碼時不需要的所有內容,包括代碼注釋、空格和不必要的分號。這可以略微縮小 CSS 和 JavaScript 文件的體積,從而讓瀏覽器可以更快速地加載這些內容,減少占用的帶寬。盡管代碼更小化通常只能帶來微不足道的性能提升,但它仍然是一種重要的比較好的做法。
使用有效的第三方服務,實現重要的網站功能
托管:如果源服務器響應請求的速度很慢,即使是設計比較好的網站,其網頁加載速度也會很慢。網站所有者應該選擇平均響應時間低于 200 毫秒,且擁有良好的可靠性記錄的服務器。
DNS:DNS 是一個域名轉化系統(將example.com 轉化為 IP 地址),這是頁面加載過程的重要組成部分。網站所有者應該選用能夠快速且可靠地提供解析結果的 DNS 服務,而不是依賴于 Web 主機的 DNS。
緩存:網站內容距離請求者的位置越近,他們接收到相應內容的速度就越快。網站所有者應該使用內容交付網絡 (CDN) 在全球多個地點緩存 Web 內容,如此一來,用戶的請求就不必跨越數百或數千英里(以及許多自治網絡)的長途傳輸才能到達網站的源服務器。
網絡安全:DDoS 攻擊、惡意機器人以及其他網絡攻擊,可能會降低網站性能。這個話題的涉及面過于寬泛,無法在此一一詳述,但網站所有者應該選擇一家 Web 應用程序安全提供商,既可以過濾惡意流量,同時不降低合法流量的速度。