【AWS】CDNサービス「CloudFront」のキャッシュ削除方法

AWSのCDNサービスである「CloudFront」を使い始めたのですが、データを変更しても、なかなかその内容に変更されないものがありました。
これはキャッシュが悪さしているな、、、と思い削除したところ、無事にすぐに反映されました。

キャッシュの削除方法をメモしておきます。

CDNって?

このページを参照されている方には釈迦に説法かもしれませんが、簡単に解説いたします。

CDNとは「Content Delivery Network」の略で、ウェブのコンテンツを効率的かつスピーディーに配信するために使われる仕組みです。
このCDNを実現するサービスの一つに、AWSの「CloudFront」があるわけです。

例えば、とある動画をサーバーに配置して配信するとしましょう。
動画の再生は、容量も大きいためネットワーク負荷がかかります。
そのため、1台のサーバーで多数の接続を受けることはできません。
利用者からすると重い(もしくはつながらない)、サーバーからすると他の処理ができなくなる、落ちる、といったことにつながります。

そこで「CDN」の出番です。

「CDN」は、サーバーのデータ(この例だと動画データ)を、多数のキャッシュサーバーにコピーし、
利用者からのリクエストをそちらに振り分けるような動きをします。

また、キャッシュサーバーは利用者の(物理的に)近いロケーションが選ばれることが多いため、
サーバーに直接アクセスするよりもレスポンスの向上が見込めます。

「サーバー+(多数の)キャッシュサーバー+分散できるような仕組み」が必要となるため、
自前で用意するのは至難の業です。

が、お手軽に利用できるCDNとして、AWSの「CloudFront」といったサービスがあるわけですね。

ただし、キャッシュサーバーへの反映にタイムラグがあり、直近のデータが取得できていないかも、といった欠点もあります。
今回も、この事象に該当したと思われます。

「CloudFront」キャッシュ削除方法

当然ですが、手順は準備されておりますので、ごくごく簡単です。

「CloudFront」を開き、該当のDistributionを選択

Invalidations > Create Invalidation

削除するパスを指定して実行

ワイルドカードの指定もできますので、
/*
などで全てのキャッシュを削除することも可能です。

補足

「Invalidation」は、あくまで「都度の指示」を出すだけです。
(今あるキャッシュを消して!というだけ。)

「キャッシュしない」といった設定となるわけではありませんので、ご注意ください。

※ご回答希望の場合は、ご連絡先も記入ください
"意見が持てる" デジタルコラム
絶賛配信中!

メルマガ詳細はこちら >>>

送信時点で「Privacy Policy」に同意したものとみなします。
広告を含むご案内のメールをお送りする場合があります。
   
         
最後までお読みいただき、ありがとうございました。
以下も、ぜひご活用ください^^
出版物
ITmedia
メルマガ
Site Access Log by HTTP Header

    >情報システムの

    情報システムの"教科書"本を発売中!


    ■ 情シス、システムコンサルタント、システムエンジニアの方へ
    情シスの定石(技術評論社)

    ■ システムエンジニア、情シスの方へ
    システム設計の教科書(技術評論社)

    CTR IMG

    株式会社グロリア ご紹介