Azure CDN でのファイル圧縮によるパフォーマンスの向上

ファイル圧縮は、サーバーからファイルを送信する前にファイル サイズを減らすことができるため、ファイルの転送速度とページ読み込みのパフォーマンスを向上させることができる簡単で効率的な方法です。 ファイル圧縮により、帯域幅のコストを軽減し、ユーザーへの応答を改善することができます。

ファイル圧縮を有効にするには、次の 2 つの方法があります。

  • 配信元サーバーで圧縮を有効にします。 この方法では、Azure CDN は圧縮ファイルを受け渡し、要求したクライアントに配信します。
  • CDN POP サーバーで直接、圧縮を有効にします (即時圧縮)。 この方法では、配信元サーバーで圧縮されていない場合でも、CDN でファイルが圧縮され、エンド ユーザーに渡されます。

重要

Azure Content Delivery Network 構成の変更がネットワーク全体に反映されるまでには時間がかかる可能性があります。

  • Azure CDN Standard from Microsoft プロファイルの場合、通常、反映は 10 分以内で完了します。
  • Azure CDN Standard from Edgio プロファイルおよび Azure CDN Premium from Edgio プロファイルの場合、通常、反映は 10 分で完了します。

今回初めて CDN エンドポイントの圧縮を設定した場合は、トラブルシューティングの前に、圧縮設定が確実に POP に反映されるように 1 ~ 2 時間の待機時間を検討してください。

圧縮の有効化

Standard および Premium CDN レベルでは同じ圧縮機能が提供されますが、ユーザー インターフェイスは異なります。 Standard と Premium CDN レベルの違いの詳細については、Azure CDN の概要に関するページを参照してください。

Standard CDN プロファイル

Note

このセクションは、Azure CDN Standard from Microsoft プロファイルと Azure CDN Standard from Edgio プロファイルに適用されます。

  1. CDN プロファイルのページで、管理する CDN エンドポイントを選択します。

    CDN プロファイル エンドポイント

    CDN エンドポイントのページが開きます。

  2. [圧縮] を選択します。

    ポータル メニューで [圧縮] が選択されているエンドポイントを示すスクリーンショット。

    圧縮のページが開きます。

  3. 圧縮を有効にするには、 [オン] を選択します。

    [圧縮] の有効化を示すスクリーンショット。

  4. 既定の MIME の種類を使用するか、MIME の種類を追加または削除して一覧を変更します。

    ヒント

    圧縮形式に圧縮を適用することは可能ですが、推奨されません。 たとえば、ZIP、MP3、MP4、JPG などの形式です。

  5. 変更後、 [保存] を選択します。

Premium CDN プロファイル

Note

このセクションは、Azure CDN Premium from Edgio プロファイルだけに適用されます。

  1. CDN プロファイルのページで、 [管理] を選択します。

    CDN の管理の選択

    CDN 管理ポータルが開きます。

  2. [HTTP ラージ] タブ、 [キャッシュの設定] フライアウトの順にマウスのカーソルを合わせます。 [圧縮] を選択します。

    CDN 圧縮の選択

    圧縮のオプションが表示されます。

    CDN のファイル圧縮のオプション

  3. [Compression Enabled](圧縮の有効化) を選択して圧縮を有効にします。 [ファイルの種類] ボックスで、コンマ区切りのリスト (スペースなし) として、圧縮する MIME の種類を入力します。

    ヒント

    圧縮形式に圧縮を適用することは可能ですが、推奨されません。 たとえば、ZIP、MP3、MP4、JPG などの形式です。

  4. 変更後、 [更新] を選択します。

圧縮のルール

Azure CDN Standard from Microsoft プロファイル

Azure CDN Standard from Microsoft プロファイルの場合、対象ファイルのみが圧縮されます。 圧縮を実行可能にするためのファイルの条件は、次のとおりです。

  • ファイルは圧縮用に構成されている MIME の種類である必要がある
  • 配信元の応答に "ID" コンテンツエンコーディング ヘッダーのみを含める
  • 1 KB より大きい
  • 8 MB 未満

これらのプロファイルでは、次の圧縮エンコードがサポートされています。

  • gzip (GNU zip)
  • brotli

要求で複数の圧縮の種類がサポートされている場合、brotli 圧縮が優先されます。

アセットの要求で gzip 圧縮が指定され、要求がキャッシュ ミスになった場合、Azure CDN は POP サーバー上で直接アセットの gzip 圧縮を行います。 その後、圧縮ファイルがキャッシュから提供されます。

配信元がチャンク転送エンコード (CTE) を使用してデータを CDN POP に送信する場合、圧縮はサポートされません。

Azure CDN from Edgio プロファイル

Azure CDN Standard from Edgio プロファイルと Azure CDN Premium from Edgio プロファイルについては、条件を満たすファイルのみが圧縮されます。 圧縮を実行可能にするためのファイルの条件は、次のとおりです。

  • 128 バイトより大きい
  • 3 MB 未満

これらのプロファイルでは、次の圧縮エンコードがサポートされています。

  • gzip (GNU zip)
  • DEFLATE
  • bzip2
  • brotli

HTTP 要求にヘッダー Accept-Encoding: br がある場合、CDN の応答は圧縮されません。

圧縮動作の表

次の表に、すべてのシナリオでの Azure CDN 圧縮動作を示します。

圧縮が無効であるか、ファイルの圧縮が実行不可能

クライアントから要求された形式 (Accept-Encoding ヘッダー経由) キャッシュ ファイルの形式 クライアントへの CDN の応答
Compressed Compressed Compressed
Compressed 非圧縮 非圧縮
Compressed キャッシュなし 圧縮または非圧縮 配信元の応答に応じて、CDN が圧縮を実行するかどうかが決まります。
非圧縮 Compressed 非圧縮
非圧縮 非圧縮 非圧縮
非圧縮 キャッシュなし 非圧縮

圧縮が有効でファイルの圧縮が実行可能

クライアントから要求された形式 (Accept-Encoding ヘッダー経由) キャッシュ ファイルの形式 クライアントへの CDN の応答 Notes
Compressed Compressed Compressed CDN が、サポートされている形式間のトランスコードを実行します。
Microsoft の Azure CDN では、形式間のコード変換がサポートされていません。元のデータをフェッチした後、その形式に対して個別に圧縮とキャッシュが実行されます。
Compressed 非圧縮 Compressed CDN が圧縮を実行します。
Compressed キャッシュなし Compressed 配信元から非圧縮ファイルが返された場合、CDN が圧縮を実行します。
Azure CDN from Edgio は、最初の要求で圧縮されていないファイルを渡し、後続の要求のためにファイルを圧縮してキャッシュします。
Cache-Control: no-cache ヘッダーがあるファイルは圧縮されません。
非圧縮 Compressed 非圧縮 CDN が展開を実行します。
Microsoft の Azure CDN では、圧縮解除がサポートされていません。元のデータをフェッチした後、非圧縮のクライアント用に個別にキャッシュが実行されます。
非圧縮 非圧縮 非圧縮
非圧縮 キャッシュなし 非圧縮

Media Services CDN の圧縮

Media Services CDN ストリーミングが有効なエンドポイントの場合、以下の MIME の種類では、既定で圧縮が有効です。

  • application/vnd.ms-sstr+XML
  • application/dash+XML
  • application/vnd.Apple.mpegurl
  • application/f4m+XML

関連項目