膨大なネットワーク ペイロードを避ける

ネットワーク ペイロードのサイズが大きいと、読み込み時間が長くなります。また、ユーザーに費用も発生します。たとえば、携帯データ通信の追加料金が発生する場合があります。そのため、ページのネットワーク リクエストの合計サイズを減らすことは、サイトのユーザー エクスペリエンスとウォレットの両方に有益です。

Lighthouse ネットワーク ペイロード監査が失敗する仕組み

Lighthouse には、ページでリクエストされたすべてのリソースの合計サイズがキビバイト(KiB)単位で表示されます。リクエストが最も多いものから順に表示されます。

Lighthouse の「過大なネットワーク ペイロードの回避」監査のスクリーンショット

HTTP Archive のデータに基づくと、ネットワーク ペイロードの中央値は 1,700~1,900 KiB です。最大のペイロードを検出できるように、Lighthouse は、ネットワーク リクエストの合計が 5,000 KiB を超えるページを報告します。

ペイロード サイズを小さくする方法

合計バイトサイズを 1,600 KiB 未満に保つようにします。この目標は、Time to Interactive を 10 秒以内に抑えながら、3G 接続で理論上ダウンロードできるデータ量に基づいています。

ペイロード サイズを小さくする方法は次のとおりです。

スタック固有のガイダンス

Angular

JavaScript バンドルのサイズを最小限に抑えるには、ルートレベルのコード分割を適用します。また、Angular Service Worker でアセットをプリキャッシュすることも検討してください。

Drupal

ページに読み込まれる画像のサイズを小さくするには、レスポンシブ画像スタイルの使用をご検討ください。Views を使用して 1 つのページに複数のコンテンツ アイテムを表示する場合、ページ分けを実装して、1 ページに表示されるコンテンツ アイテム数を制限することを検討してください。

Joomla

記事のカテゴリに抜粋を表示する(「詳しく読む」リンクが一般的なソリューションの一つです)、ページに表示する記事の数を減らす、長い投稿を複数のページに分けて表示する、またはコメントを遅延読み込みするプラグインを使用することをご検討ください。

WordPress

投稿リストに抜粋を表示する(「more」タグを使用できます)、特定のページに表示される投稿の数を減らす、長い投稿を複数のページに分割する、コメントを遅延読み込みするプラグインを使用することを検討してください。

リソース

過大なネットワーク ペイロードの回避の監査のソースコード