Lighthouse レポートの [改善できる項目] セクションには、サーバー応答時間(ユーザーのブラウザがリクエストを行ってから、ページ コンテンツの最初のバイトを受信するまでの時間)が報告されます。

サーバーの応答時間が遅いとパフォーマンスに影響する
この監査は、ブラウザがメイン ドキュメント リクエストに対するサーバーの応答を 600 ミリ秒以上待機した場合に失敗します。ページの読み込みに時間がかかると、ユーザーは不快に感じます。ページの読み込みが遅くなる原因の一つとして、サーバーの応答時間が遅いことが考えられます。
ユーザーがウェブブラウザで URL に移動すると、ブラウザはネットワーク リクエストを行ってそのコンテンツを取得します。サーバーがリクエストを受け取り、ページ コンテンツを返します。
ユーザーが求めるすべてのコンテンツを含むページを返すために、サーバーが多くの処理を行う必要がある場合があります。たとえば、ユーザーが注文履歴を表示している場合、サーバーは各ユーザーの履歴をデータベースから取得し、そのコンテンツをページに挿入する必要があります。このような作業をできるだけ早く行うようにサーバーを最適化することは、ユーザーがページの読み込みを待つ時間を短縮する方法の 1 つです。
サーバーが多くの処理を必要としない場合でも、クライアントとサーバー間のネットワーク レイテンシによってサーバーの応答時間が遅くなることがあります。
サーバーの応答時間を短縮する方法
サーバーの応答時間を改善する最初のステップは、サーバーがページ コンテンツを返すために完了する必要があるコア コンセプト タスクを特定し、各タスクにかかる時間を測定することです。最も長いタスクを特定したら、そのタスクを高速化する方法を探します。
サーバーのレスポンスが遅くなる原因は数多く考えられ、改善方法も数多くあります。
- ページの準備を高速化するために、サーバーのアプリケーション ロジックを最適化します。サーバー フレームワークを使用している場合は、そのフレームワークにおすすめの方法が記載されている場合があります。
- サーバーがデータベースをクエリする方法を最適化するか、より高速なデータベース システムに移行します。
- より多くのメモリまたは CPU を搭載するようにサーバー ハードウェアをアップグレードします。
CDN を使用してネットワーク レイテンシを短縮します。これは、ドキュメントを CDN エッジノードでキャッシュに保存できる場合に特に効果的です。
詳しくは、TTFB の最適化ガイドをご覧ください。
スタック固有のガイダンス
Drupal
Internal Page Cache
、Internal Dynamic Page Cache
、BigPipe
などの Drupal
キャッシュ モジュールを 1 つ以上使用してトラフィックをオフロードします。CDN と組み合わせると、応答時間をさらに短縮できます。ホスティング サーバーでは、PHP OPcache を使用する必要があります。データベースのクエリ時間を短縮するには、Redis や Memcached などのメモリ キャッシュの使用を検討してください。最後に、パフォーマンスの高いテーマ、モジュール、高速サーバーを使用して、サーバー応答時間を短縮してください。
Magento
Magento の Varnish 統合を使用します。
対応
React コンポーネントをサーバーサイドでレンダリングする場合は、クライアントでマークアップの全体を一度に受信するのではなく一部ずつ受信してデータを挿入できるように、renderToNodeStream()
または renderToStaticNodeStream()
を使用することを検討してください。
WordPress
軽量のテーマ(ブロック テーマが理想的)を選択し、フルページ キャッシュまたは静的なサイト ソリューションを実装します。不要なプラグインを無効にして、サーバーのオーバーヘッドを最小限に抑えます。
ホスティングをマネージド サービスまたは専用サービスにアップグレードすることを検討してください。