縮短伺服器回應時間

Lighthouse 報告的「商機」部分會回報伺服器回應時間,也就是使用者要求瀏覽器收到網頁內容後,瀏覽器收到第一個位元組所需的時間:

Lighthouse Server 回應時間螢幕截圖的稽核時間偏低

伺服器回應時間緩慢會影響效能

如果瀏覽器等待伺服器回應主要文件要求超過 600 毫秒,這項稽核就會失敗。如果網頁載入時間較長,使用者就會不喜歡。伺服器回應時間緩慢是造成網頁載入時間過長的原因之一。

當使用者在網路瀏覽器中前往某個網址時,瀏覽器會發出網路要求以擷取該內容。您的伺服器收到要求並傳回網頁內容。

伺服器可能需要進行大量工作,才能傳回包含使用者所需內容的網頁。舉例來說,如果使用者查看訂單記錄,伺服器就必須從資料庫中擷取每位使用者的記錄,然後將該內容插入網頁中。想要縮短使用者等待網頁載入的時間,可以考慮將伺服器最佳化來盡快完成這項作業。

即使伺服器不需要執行大量工作,用戶端和伺服器之間的網路延遲都可能導致伺服器回應速度變慢。

如何縮短伺服器回應時間

要縮短伺服器回應時間,第一步就是確認伺服器必須完成哪些核心概念工作才能傳回網頁內容,然後評估各項工作花費的時間。找出耗時最長的工作後,請設法加快處理速度。

導致伺服器回應速度過慢的原因有很多,因此可能需要改善下列方法:

  • 最佳化伺服器的應用程式邏輯,加快頁面準備速度。如果您使用伺服器架構,該架構可能已提供有關做法的建議。
  • 最佳化伺服器查詢資料庫的方式,或遷移至速度更快的資料庫系統。
  • 升級伺服器硬體,使用更多記憶體或 CPU。

使用 CDN 縮短網路延遲時間。如果文件可以在 CDN 邊緣節點快取,這種做法會特別有效。

詳情請參閱最佳化 TTFB 指南。

堆疊專屬指南

Drupal

主題、模組和伺服器規格都會影響伺服器回應時間。建議你尋找經過最佳化調整的主題、謹慎選取最佳化模組,或升級伺服器。代管伺服器應使用 PHP 運算程式碼快取、Memcached 或 Redis 等記憶體快取系統,以縮短資料庫查詢時間,並採用最佳化的應用程式邏輯,加快頁面準備速度。

Magento

使用 Magento 的 Varnish 整合

回應

如果你在伺服器端算繪任何 React 元件,建議使用 renderToNodeStream()renderToStaticNodeStream(),讓用戶端接收並填入標記的不同部分,而非一次接收所有標記。

WordPress

主題、外掛程式和伺服器規格都會影響伺服器回應時間。建議你尋找經過最佳化調整的主題、謹慎選取最佳化外掛程式,並/或升級伺服器。

資源