1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

CloudFrontで手動キャッシュ無効化の怖さ

Last updated at Posted at 2019-06-17

何があったか

久々CloudFront設定をしたら3年前のエピソードを思い出した。
リクエスト増加でCloudFrontを導入したが、コストがかかっても更新時にすぐ確認したいとの要望。[Invalidation]でキャッシュの無効化はできるが・・・

コンテンツが更新されたら動く。そうLambdaの登場。以下が自分資料より分かりやすかったのでそのままリンク。
静的コンテンツを更新したときに即時反映されるようにCloudFrontのInvalidationを走らせるLambda関数

ある日偶然、テストアカウントの請求ダッシュボードを見ると、60万円を超えている。月変わって10日しか経てないのに。(偶然見なかったらその月どうなっただろう・・・)

リミッターとか警告はデフォルト装置で必要ではないか

Invalidationはプレミアム的な料金に気をつけよ。CF導入は新プロジェクトの新しい試みだったし、故意ではないので注意だけで終わりとなったけど、65万はそれでよかったとは思えない。検索すると似たようなAWS魔と出会ってしまった苦労人がいた。
AWSさん、小銭稼ぎ(AWSにとっては)はやめましょう。上司に叱られAWSが嫌になったエンジニアって意外といると思いますよ。

CloudWatchかなにかで料金監視すること

前に進むしかない

キャッシュはどうしても導入したい。無効化は必要。

テスターに下記で納得していただいた。
URLの後ろに処理に影響のないパラメータをつける!
CFが新しいページと認識するのでキャッシュークリアの効果がある。
https://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html#invalidation-specifying-objects-paths

.../sample.php?1906171634

メモ

登録フォームなどキャッシュがジャマになるページはBehaviorsでキャッシュスルー設定

1
3
8

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?