CloudFrontについて

お疲れ様です、第三システム部の稲村です。
3月末より新しいプロジェクトに参加しまして、その際にCloudFrontに触れる機会に恵まれましたので、改めて発表用に向けた資料の1回目となります。

参考資料

いわずもがなメインはBlackBeltを参考にしています(こっちの方が詳し(以下ry)
参考サイト:[AWS Black Belt Online Seminar] Amazon CloudFront deep dive 資料及び QA 公開

CloudFrontとは

cloudfront
20201028 AWS Black Belt Online Seminar Amazon CloudFront deep dive より

  • コンテンツの配信を高速化する
  • AWS global networkにより、非キャッシュも高速化する
  • オリジンへの負荷をオフロード(肩代わりしてけ軽減してくれる)

CloudFront設定する際に押さえておきたい用語

  • Distribution(ディストリビューション):CloudFront自身の設定
  • Origin(オリジン):コンテンツ提供元のサーバの設定
  • Behavior(ビヘイビア):キャッシュの動作設定

CloudFront料金モデル

cloudfrotn_price

  • CloudFrontの料金以外にも、ブラウザキャッシュにおける考えも考慮してアーキテクトを考えなければいけない

ブラウザキャッシュについて

大きくブラウザには2つの強いキャッシュ弱いキャッシュというものがあります。

強いキャッシュ

ブラウザ側でリソースを保持して、期限が切れるまでサーバにHTTPリクエストを発効しません。そのため、一度ブラウザにキャッシュされると、サーバ側からハンドリングすることができなくなります

  • Cache-Controlヘッダー
  • Expiersヘッダー

弱いキャッシュ

アクセスに対して都度リソースが更新されているかチェックをおこないます、ブラウザ側でキャッシュされていても、リソースを更新すればブラウザに更新情報を届けられ、サーバ側でハンドリングできる。

  • Last-Modifiedヘッダー
  • ETagヘッダー

ブラウザのキャッシュ戦略

弱いキャッシュをハンドリングするような設定にして、CloudFrontで全体的なキャッシュの設定を行う。

料金について:Amazon CloudFrontの料金

最後に

新しいメンバも増え、技術的な話などをチーム内でも増やすキッカケとしてもブログ投稿続けていきたいと思います。
次回はCloudFrontのキャッシュを交えた挙動と、キャッシュキー・オリジンリクエストポリシーについて説明したいと思います。

Last modified: 2022-04-17

Author