如何減少 TTFB 以改善 WordPress 速度最佳化

·

減少 TTFB

Photo by Justin Morgan on Unsplash

減少 TTFB 時間對您的 WordPress 網站的速度優化是非常重要的,很多時候我們都專注於 WordPress 前端速度性能和優化以提高頁面加載速度,但往往卻忽略 TTFB 的重要性。

但是,基本上最好從您的網站最初開始加載的伺服器端去查看它,今天我們將深入探討 TTFB (第一個字節的反應時間) 如何影響你的網站,並討論一些如何減少它的簡單方法,TTFB 通常是一個被忽視的性能因素,但在測試站點速度時應該考慮到它。

內容目錄:

  • 什麼是 TTFB?
  • TTFB 重要嗎?
  • 如何測量 TTFB 的反應時間?
  • 減短 WordPress 網站的 TTFB 的 4 種方法

什麼是 TTFB?

TTFB 是 Time To First Byte 的縮寫,代表第一個字節的反應時間

簡單來說,是 Client 用戶端送出對伺服器的請求,瀏覽器收到伺服器接回應的第一個字節數據的等待時間。

TTFB 獲取該數據所需的時間越短,顯示你的網站頁面所需的時間就越快。

一個常見的誤解是,這是在 DNS 查找時間之後開始計算的 !

然而,網路中 TTFB 的原始計算總是包括網路延遲,這涉及一個過程,包含 DNS 的速度、網路延遲和您的網站主機 (伺服器) 與客戶端的距離,這 3 項因素總加起來就是您的總 TTFB 反應時間。

可以利用 Chrome 按 F12 查看自己網站的 Waiting TTFB 的反應時間。

TTFB 等待的時間

1. 向伺服器請求

當有人訪問您的網站時,首先第一步會發送 HTTP 請求從客戶端 (瀏覽器) 發送到網站的伺服器。

在此步驟中,有多種因素會導致延遲,TTFB 等待的時間拉長:

  • 緩慢的DNS 查找時間可能會增加請求的時間。
  • 網站伺服器位於地理位置距離 client 客戶端有很遠的距離,在數據傳輸上造成延遲。
  • 您的伺服器有復雜的防火牆規則,可能會增加路由時間。
  • 客戶端使用的網路頻寬與速度。

2. 伺服器的效能

發送 HTTP 請求後,伺服器現在必須處理它並生成回應。

這可能會引入許多不同程度的延遲,例如:資料庫調用緩慢、第三方腳本過多、未快取您的第一個回應、代碼或 WordPress 主題優化不佳以及硬碟 I/O 或記憶體等伺服器資源效能低落。

3. 對客戶端 (client) 的回應

伺服器處理完請求後,必須將結果發送回客戶端 (或者更簡單的說,發送回第一個字節)。

這在很大程度上受到伺服器和客戶端的網路速度的影響,如果客戶端使用 Wi-Fi 上網或當地網路速度較慢,它也將會反應在 TTFB 中。

最快的 WordPress 網站代管

通過簡單的設置和管理,讓您的 WordPress 網站有如閃電般的快速、安全,創造更佳的 SEO 排名。

開始免費的網站遷移

TTFB 重要嗎?

重點的是要了解 TTFB (第一個字節的反應時間) ,這與網站優化速度不同。

這實際上是對網路、伺服器回應的能力的衡量。

網路上有很多關於 TTFB 是否重要的​​討論,有人說它沒有意義,也有人說它很重要 (Google 的 Web 性能工程師)。雙方都提出了一些關於為什麼重要或為什麼它不重要的觀點,以及關於它是如何實際計算的一些問題。

Moz 甚至對搜尋排名和 TTFB 之間的相關性進行了深入研究, 但是,很難知道這是否是真正的原因,或者 TTFB 反應較慢,但是網站總體速度上較快,而這是否可能受到 Google 的頁面速度排名因素的影響。

與其花時間去討論它 (TTFB) 是否重要,我們寧可專注於網站可以做的優化來改進,您所做的網站優化都可以提高 WordPress 網站的整體速度,而這反過來又會影響您的 TTFB。

在我們的測試中,TTFB 的時間過長的網站,感覺加載更慢。

一般來說,任何低於 100 ms 時間的都是不錯 TTFB,Google PageSpeed Insights 建議伺服器反應時間應低於 200 ms,如果您的網站在 300-500 ms 範圍內,這是非常標準的;如果您的網站時間超過 600 ms,那您的伺服器上可能配置有問題,或者是時候升級到更好的託管主機了。

或者參考我們如何減少 TTFB 的建議,請記住,SSL/TLS 傳輸協議也可能是一個因素。

如何測量 TTFB 的反應時間?

我們可以通過多種不同的方式測試 TTFB,我們將在下面說明幾個方法,每種測試工具都會給出不同的結果,因此,找出一個自己適合的一個工具並堅持使用它作為基礎很重要。

Google Chrome DevTools 測量 TTFB

您可以啟動 DevTools 在 Google Chrome 中測量 TTFB,如果,您在桌上電腦 PC 上測試 TTFB 會受到網路延遲和 Internet 連接的影響,因此,使用從第 3 方工具 (如下例子) 可能更準確有效。

  • 從 Chrome 選單中選擇更多工具 > 開發者工具。
  • 右鍵單擊頁面元素並選擇檢查
  • 使用鍵盤快捷鍵 CtrlShiftI (Windows) 或 Cmd OptI (Mac)

啟動 F12 窗口並查看網站的性能。

Google Chrome devtools TTFB

WebPageTest 測量 TTFB

您還可以使用 WebPageTest 測量您的 TTFB,根據他們的詳細訊息,目標時間是 DNS、socket 和 SSL 協議所需的時間,正如您在下面的測試中看到的那樣,該網站的測量時間為 66 ms TTFB。

Time to First Byte

GTmetrix 測量 TTFB

在 GTmetrix 中,TTFB 被稱為等待時間 (wait time),請點擊 Waterfall 頁面,然後將滑鼠指標移動到你所測量的網址旁,會出現一個顯示視窗。

在 GTmetrix 中測量 TTFB

KeyCDN 中的工具測量 TTFB

KeyCDN 有一個很棒的 Web 性能測試工具 ,您可以在其中同時從 10 個不同的地點測量您的 TTFB。

正如您在下面的測試中看到的那樣,TTFB 在新加坡較低,而在其他國家測量點則高得多,這是因為網站的伺服器實際上位於新加坡;這也證明了網路延遲和距離對 TTFB 有影響。

KeyCDN TTFB

還有一些其他第三方測量 TTFB 的工具,例如:

WooWP 可以為您節省 外掛 / CDN 的成本。

您當前的虛擬主機可能會花費您的時間和金錢,在 WooWP,我們的主機架構已包含快取、備份、防毒、CDN 功能,讓您省下這些額外的金錢。

了解更多

減短 WordPress 網站的 TTFB 的 4 種方法

現在讓我們深入說明如何減短 WordPress 網站上的 TTFB 反應時間。

1. 使用高效能的 WordPress 主機

減少 TTFB 的第一種方法,最基本的是使用快速的 WordPress 主機,一個好的 WordPress 主機不僅有足夠的硬體效能,還有一個快速的網路。

例如:Kinsta 主機 現在擁有所有 34 個 Google Cloud Platform 數據中心,因此,您可以將 WordPress 網站放置在更靠近訪問者的位置,這非常重要。

另外,Kinsta 主機使用 Google Cloud Platform 的高級網路,許多其他託管主機商提供的是使用 Google Cloud 的標準層網路,這會導致較慢的網路速度。

擁有一個良好的架構的 WordPress 主機對於降低 TTFB 反應速度是很重要的。

仔細選擇位於客戶所在地區的資料中心也是要考量進去,如果,您的大多數客戶都在美國,請不要在選擇歐洲的數據中心 (普通的 CDN 並不能解決 TTFB 的一些問題)。

2. 使用 CDN

另一種減少 TTFB 的簡單方法是利用 CDN (內容交付網路)。

如果,您的網站數據中心不在主要客戶的地區或國家提供服務,這會大大降低您網站的 TTFB,正如上面看到的,新加坡以外的地區,TTFB 反應時間分常的長,網站主機的位置非常重要。

使用 Cloudflare CDN,您的 TTFB 可能會有改善,但是要注意,有些地區沒有 CDN 的節點,這反而會造成 Cloudflare 要繞行其它國家或地區,再進入您的客戶所在的地區,這對 TTFB 反而沒有幫助。

Cloudflare CDN LAX
Cloudflare 美國 LAX 節點

例如:您使用 Cloudflare Free 方案 (Free、Pro 方案並沒有台灣的網路節點),而你的客戶來源都來自台灣,這時的 CDN 網路反而會繞道 LAX 或 NRT,TTFB 時間反而會更長,這不是一個好的選擇。

因台灣的電信單位與 Cloudflare 有特殊的問題存在,想要有更好的 CDN 速度,就必須購買 Cloudflare Enterprise 方案,才會有 TPE 節點,但是 Enterprise 方案價格非常貴,並不適合一般的使用者。

Cloudflare CDN TPE
Cloudflare 台北 TPE 節點

現在主機託管商與 Cloudflare Enterprise 整合,是一個流行趨勢,如:Kinsta, BigScoots, Rocket, Servebolt, Convesio, Cloudways, WP Engine 這些網站 (主機) 託管商都與 Cloudflare 整合了,您的網站可以選擇打開 CDN 功能,達到更好的 TTFB 時間。

3. WordPress 快取

第三種方法,是減少 TTFB 的最簡單及效果最明顯方法之一,在 WordPress 網站上使用快取。

許多人只認為快取可以幫助減少網站加載時間,但實際上,它也有助於減短 TTFB 反應時間,因為,它有助於減少伺服器處理時間,我們在執行和不使用快取的情況下再次運行了一些測試,得到的結果如下。

網站沒有快取測試

網站主機位置在新加坡,測量位置於台灣,我們通過 Chrome DevTools 運行該網站,並且在沒有快取運行的情況下,我們的站點獲得了 142.61 ms 的加載時間和 135.23 ms 的 TTFB。

Chrome DevTools no cache

網站啟用網站快取

我們啟用網站快取再測試一次,主機位置一樣在新加坡,測量位置於台灣,我們通過 Chrome DevTools 運行該網站,並且在有快取運行的情況下,我們的站點獲得了 56.53 ms 的加載時間和 48.73 ms 的 TTFB。

Chrome DevTools 快取測試

因此,通過啟用 WordPress 快取,我們能夠將有效的減少 TTFB 反應時間!

我們的 JET WooWP 的快取機制是伺服器級別的操作,也就是說您不需要安裝快取外掛;如果您是使用其它的主機託管商管理 WordPress 網站,我們建議您使用免費的快取外掛,例如:Cache Enabler。

Cache Enabler

4. 使用高級 DNS 管理提供商

最後但同樣重要的是,DNS 也在 TTFB 中有影響作用,很難準確計算它受到的影響有多大,但您仍然可以看到整體 DNS 查找時間,並看到那裡有更快和更慢的提供商。

DNS 的作用是將域名和 IP 位址相互對映的一個分散式資料庫,瀏覽器 (客戶端) 輸入一個網址 (yungke.me),DNS 主機會快速查詢 Domain Name 和 IP 對應資料,而指向該 IP 位置的主機。

這些對應的動作,就是上述 TTFB 中的第一個影響因素。

您可以利用 DNSPerf 速度測試工具進行 DNS 主機測試,以下是 yungke.me 網站所使用的 Cloudflare DNS 為例:

DNS Performance

如您所見,DNS 查詢的時間越短 TTFB 總體時間也會減少。

您也可以測試一下自己的 DNS 主機的響應時間,有的 DNS 主機的響應時間會慢到 100ms 以上,如果網站伺服器又不快速,TTFB 的時間被拉長是必然的了。

緩慢的 DNS 伺服器
緩慢的 DNS 伺服器

結語

在之前 2018 年時,我就寫過一篇關於 TTFB 的文章,經過這幾年的網路變化及更好的 CDN 技術,TTFB 的反應時間可以在更縮短。

我們可以最佳化網站許多事情而減少 TTFB,例如:資料庫快取、更快的 NVMe SSD 硬碟 I / O、RAM、PHP 快取設定置、MySQL 設定、網路頻寬、快速的 HTTP/3 協定。

上面提到的那些優化是相當的容易做到,並且有效果提升網站性能。

但是,不要忘記一個快速 WordPress 主機、DNS 和 CDN 是減少 TTFB 反應時間最重要的關鍵。

你很努力的最佳化 (優化) WordPress 網站,但別忘了減少 TTFB 反應時間。

FAQ

TTFB 是甚麼 ?

  • TTFB 是 Time To First Byte 的縮寫,是指從訪客開啟網站頁面到網頁內容開始呈現之間的等待時間。

我都照上面的教學方法改進了,為什麼 TTFB 的速度還是不理想?

  • 主機的效能和 CDN 是減少 TTFB 反應時間最重要的關鍵,但是一般的 CDN 只能處理 JS、CSS 的檔案,CDN 的邊緣快取 HTML 才能真正縮短 TTFB 的時間。
hosted by kinsta

Comments

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Hey, 想嘗試 Kinsta 主機嗎?

18748

Kinsta 高效能主機

wPowered Starter 方案

馬上訂購

18749
Your Mastodon Instance