Lighthouse を使用してパフォーマンス バジェットを設定する

Katie Hempenius
Katie Hempenius

Lighthouse でパフォーマンス バジェットがサポートされるようになりました。LightWallet と呼ばれるこの機能は、5 分以内に設定でき、パフォーマンス指標やページリソースのサイズと量に関するフィードバックを提供します。

Lighthouse をインストールする

LightWallet は、Lighthouse v5 以降のコマンドライン バージョンで使用できます。

まず、Lighthouse をインストールします。

npm install -g lighthouse

予算を作成する

budget.json という名前のファイルを作成します。 このファイルに次の JSON を追加します。

[
  {
    "path": "/*",
    "timings": [
      {
        "metric": "interactive",
        "budget": 3000
      },
      {
        "metric": "first-meaningful-paint",
        "budget": 1000
      }
    ],
    "resourceSizes": [
      {
        "resourceType": "script",
        "budget": 125
      },
      {
        "resourceType": "total",
        "budget": 300
      }
    ],
    "resourceCounts": [
      {
        "resourceType": "third-party",
        "budget": 10
      }
    ]
  }
]

この budget.json ファイルの例では、5 つの個別の予算を設定しています。

  • Time to Interactive の予算は 3,000 ミリ秒です。
  • ページ上の JavaScript の合計量に対する 125 KB の予算。
  • ページ全体のサイズに対する 300 KB の予算。
  • サードパーティのオリジンに対して行われたリクエスト数に対する 10 件のリクエストの予算。

サポートされているパフォーマンス指標とリソースタイプの全リストについては、Lighthouse ドキュメントのパフォーマンス バジェットのセクションをご覧ください。

Lighthouse を実行する

--budget-path フラグを使用して Lighthouse を実行します。このフラグは、予算ファイルの場所を Lighthouse に指示します。

lighthouse https://example.com --budget-path=./budget.json

結果を見る

LightWallet が正しく設定されている場合、Lighthouse レポートの [パフォーマンス] カテゴリに [予算] セクションが表示されます。

Lighthouse レポートの [Budgets] セクション

JSON 形式の Lighthouse レポートでは、Lightwallet の結果は performance-budget 監査の監査結果に表示されます。