[AWS] Amazon CloudFrontのキャッシュ削除(Invalidation)

2016.11.28

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

おばんです、来週はお世話になっているSwift 愛好会さんで開催される開発合宿が楽しみな田中です。
なにをやろうかな、ライブラリ作ろうかな、個人アプリ開発を進めようかな、参加者の方々と設計を語るのも良さそうだな...。楽しみだー!!

さてさて、今回はAmazon CloudFrontを少しさわったのでその時得たTips紹介です。

Invalidationとは

Invalidationとは、CloudFrontのエッジサーバー上のキャッシュを削除する機能です。

キャッシュの削除方法

該当するCloudFrontのコンソールを開く。

スクリーンショット_2016-11-28_17_55_05

Invalidationsタブを選択し、「Create Invalidation」のボタンを押す。

スクリーンショット_2016-11-28_17_55_33

削除したいオブジェクトのキャッシュをパス指定で削除する。
ワイルドカードが使用できるので、まとめて全キャッシュを削除する場合はこの画像の指定。
パスが指定できたら「Invalidate」ボタンを押します。

スクリーンショット_2016-11-28_17_55_53

すると一行追加され、Status列がIn Progressとなっています。

スクリーンショット_2016-11-28_17_56_03

キャッシュの削除処理が完了するとCompletedとなり、完了です。

スクリーンショット_2016-11-28_18_20_19

まとめ

Invalidationは削除機能であって、ここで指定したオブジェクトのキャッシュが削除実行以降、キャッシュを保持しないようにするような機能ではありません。
Invalidationの指定後に行で表示されるのは削除履歴であって、この履歴を削除はできません。

当初この処理の実行後に履歴の行が保持されるので、そのオブジェクトのキャッシュが保持されなくなる設定なのかと勘違いしていました。
学びました。