パージとは?Webのキャッシュを強制削除してコンテンツを即時更新する手法

システム開発・テクノロジー
パージとは?ざっくりと3行で
  • CDN(コンテンツデリバリーネットワーク)やキャッシュサーバーに蓄積されたキャッシュを強制的に削除(無効化)して、最新のコンテンツを即時配信できる状態にする操作のこと
  • TTL(キャッシュの有効期限)が切れるのを待たずに任意のタイミングでキャッシュを消去できるため、緊急の修正・コンテンツ更新・セキュリティ対応の際に重要な機能だ
  • CloudflareやAWSのCloudFrontなど主要なCDNが提供しており、URL単位・パス単位・全キャッシュの一括削除など粒度を選んでパージできる

【深掘り】これだけ知ってればOK!

パージが必要になる典型的な場面を理解しよう。緊急コンテンツ修正:誤字脱字・不正確な情報をすぐに反映させたい。セキュリティパッチの即時反映:脆弱性のあるスクリプトファイルを修正して即座に配信したい。価格・在庫情報の更新:セール終了後に価格が古いキャッシュで表示され続けるのを防ぐ。緊急のサイト停止・メンテナンスページへの切り替え:障害発生時にメンテナンス画面を即時表示したい。

パージの粒度を理解しよう。全キャッシュの一括パージ:全てのコンテンツのキャッシュを削除する。リスクが高いが確実に反映される。URL単位のパージ:特定のURLのキャッシュのみ削除する。影響範囲を最小限に抑えられる。タグベースのパージ:CloudflareのCache-Tag・VarnishのBan/Purgeなど、コンテンツにタグを付けてタグ単位でまとめてパージできる。関連するコンテンツをまとめて更新できる効率的な手法だ。

パージとTTL(Time To Live)の使い分けを整理しよう。TTLは「キャッシュが自然に期限切れになる時間」を設定するもので、通常は数時間〜数日に設定する。パージはTTLを待たずに強制削除する操作だ。基本はTTLで管理し、緊急時・重要なコンテンツ更新時のみパージを使うというアプローチが一般的だ。全キャッシュを頻繁にパージするとCDNのオリジンサーバーへのアクセスが急増してコスト・負荷が増大する。

WordPressユーザーがよく使うCocoon・W3 Total Cache・WP Super Cacheなどのキャッシュプラグインにもパージ機能が搭載されている。WordPressの管理画面からキャッシュを一括クリア(パージ)できるほか、記事を更新・公開した際に自動的にその記事のキャッシュをパージする設定もある。CDN側のパージとWordPressプラグイン側のキャッシュ管理を合わせて理解することが重要だ。

パージのAPIを使った自動化も重要だ。デプロイパイプライン(GitHub Actions・CircleCIなど)にパージAPIの呼び出しを組み込むことで、コードのデプロイと同時に自動的にキャッシュをパージできる。Cloudflare・CloudFront・Fastlyなど主要CDNはREST APIとCLIでパージ操作が可能で、CI/CDパイプラインとの連携が容易だ。

よくある誤解

コンテンツを更新したら自動的にキャッシュも更新されると思っている

CDNのキャッシュはTTLが切れるまで古いコンテンツを配信し続ける。サーバー側でコンテンツを更新してもCDNのキャッシュが残っている間は古い内容が配信される。緊急の修正を即時反映させるにはパージが必要だ。

パージすれば全てのユーザーに即座に新しいコンテンツが届くと思っている

CDNのキャッシュをパージしても、ユーザーのブラウザのローカルキャッシュは別物だ。ブラウザキャッシュが残っていると一部のユーザーには古いコンテンツが表示され続ける。ブラウザキャッシュの制御にはCache-Controlヘッダーの設定が必要で、パージと合わせて理解することが重要だ。

会話での使われ方

ITKAGYO運営者デプロイ太郎のアイコン画像

記事の価格情報を修正しましたが、CloudflareのキャッシュをパージしないとTTLの3時間の間は古い価格が表示され続けます。管理画面からこのURLをパージしてください。

WebエンジニアがECサイトの価格修正後にCDNキャッシュのパージが必要な理由をマーケターに説明している場面。

ITKAGYO運営者デプロイ太郎のアイコン画像

デプロイ後にCloudFrontのキャッシュを自動でパージするGitHub Actionsのステップを追加しました。毎回手動でパージする必要がなくなります。

DevOpsエンジニアがCI/CDパイプラインにCDNパージの自動化を組み込んだ改善を報告している場面。

ITKAGYO運営者デプロイ太郎のアイコン画像

WordPressの記事を更新したのに古い内容が表示されます。管理画面のキャッシュクリアボタンでWordPressのキャッシュを削除して、CDN側もパージしてみてください。

WordPress担当者がキャッシュによる表示不具合のトラブルシューティングを行っている場面。

【まとめ】3つのポイント

  • TTLを待たずにキャッシュを強制削除して即時コンテンツ更新を実現:緊急の修正・セキュリティパッチ・価格更新など即時反映が必要な場面でTTLに依存せずキャッシュを即座に無効化できるパージはWebサービス運用の重要な手段だ
  • URL単位・タグベースのパージで影響範囲を最小化する:全キャッシュの一括パージはオリジンサーバーへの急激な負荷増大を招くため、URL単位やタグベースで必要な範囲だけパージすることがコストとパフォーマンスのバランスを保つ
  • デプロイパイプラインにパージAPIを組み込んで自動化する:CDNのパージAPIをCI/CDパイプラインに組み込むことでデプロイと同時に自動的にキャッシュが更新されるため、手動パージの漏れや遅れによるコンテンツ不一致を防げる

よくある質問

Q
CloudflareでURLを指定してパージするにはどうすればいいですか?
A

Cloudflareダッシュボードの「キャッシング→設定→カスタムパージ」からURL・ホスト名・タグ・プレフィックスを指定してパージできます。またCloudflare API(PUT /zones/{zone_id}/purge_cache)でURLを配列で指定してAPIでパージすることもできます。

Q
WordPressのキャッシュとCDNのキャッシュは別物ですか?
A

別物です。WordPressのキャッシュプラグイン(W3 Total Cache・WP Super Cache・CocoonのキャッシュなどはWordPressサーバー上のキャッシュを管理します。CDNのキャッシュはCloudflare・CloudFrontなどの外部ネットワークに分散したキャッシュです。どちらか一方をパージしても、もう一方のキャッシュは残ります。

Q
パージとキャッシュバスティングはどう違いますか?
A

パージはサーバー側(CDN・キャッシュサーバー)のキャッシュを強制削除する操作です。キャッシュバスティングはファイルのURLにバージョン番号やハッシュを付加(例:style.css?v=20260523)することで、ブラウザが別のリソースとして新しいファイルを取得するよう促す技法です。両者は目的が異なりますが、組み合わせて使われることが多いです。

Q
パージするとオリジンサーバーへの負荷が上がりますか?
A

はい、全キャッシュの一括パージ直後はCDNがオリジンサーバーに直接リクエストしてキャッシュを再構築するため、一時的に負荷が増加します。大規模なサイトで一括パージを行う際はオリジンサーバーの負荷に注意が必要です。URL単位の部分的なパージやCDNのStale-While-Revalidate設定を使うことで影響を軽減できます。

この用語と一緒に知っておきたい用語

用語 この記事との関連
キャッシュ キャッシュとの関係を知ると全体像がつかみやすくなります。一度読み込んだWebサイトやアプリのデータを端末に一時保存する仕組みのこと!
CDN 次のステップとしてCDNを学ぶと知識が広がります。Content Delivery Networkの略で、世界中に配置したサーバー群からコンテンツを届ける「配達拠点ネットワーク」。
サーバー サーバーを押さえると本記事の理解がさらに深まります。ネットワークを通じて情報やサービスを提供する側のコンピューターのこと。レストランで料理を運んでくれる給仕係(server)をイメージするとわかりやすいよ
API 次のステップとしてAPIを学ぶと知識が広がります。APIの主要な特徴と用途を理解することで、関連する技術・制度・概念を正確に把握できるようになる
ブラウザ ブラウザとの関係を知ると全体像がつかみやすくなります。ブラウザというのは、インターネット上のWebページを閲覧するために使うソフトウェアのことだよ。

【出典】参考URL

https://developers.cloudflare.com/cache/how-to/purge-cache/ :Cloudflareのキャッシュパージ公式ドキュメント
https://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html :AWSのCloudFront無効化(パージ)の公式ドキュメント
https://developer.mozilla.org/ja/docs/Web/HTTP/Headers/Cache-Control :MDNのCache-Controlヘッダーの解説

コメント

「IT用語、難しすぎて心が折れそう……」という方のための、ハードル低めな用語辞典です。

情報レベルは「基礎中の基礎」。会話を止めないためのエッセンスだけを抽出しています。分かりやすさを追求するあまり、時々例え話が暴走しているかもしれませんが、そこは「ほどよく」聞き流していただけると幸いです。
ほどよくIT用語辞典システム開発・テクノロジー
デプロイ太郎のSNSを見てみる!!