はぐれメタルのケモノ道

通りすがりのはぐれメタルが少しだけ喋ります。

Udemy「手を動かしながら2週間で学ぶ AWS 基本から応用まで」Day11

どうも、はぐりんです。

 

前回に引き続き、UdemyのAWS講座

https://www.udemy.com/aws-14days/

のDay11を受講しましたので、

その内容メモを残したいと思います。

 

Day11 コンテンツキャッシュとインメモリキャッシュ

・コンテンツキャッシュパターン
 → CDN(Content Delivery Network)を配置し、コンテンツをキャッシュすることでWebサーバの負荷を軽減する。
AWS CloudFront
 → AWSが提供するフルマネージド型CDNサービス
 → 世界に100を超えるエッジロケーションが存在する(リージョンとは別)
 → AWS WAF、AWS Certificate Mangerなどと連携できる。
・CloudFrontの導入
 → ELBの前段に配置
 → OriginDomainとしてALBを指定
 → Cacheの振る舞い設定で実験のためTTLを全て20秒にする
 → デプロイまで待つ。
 → CloudFrontで指定されたDomainNameでWebページが表示されることを確認。
・動作確認
 → index.phpを変更しての動作確認
 → curlコマンドでの「X-Cache」の値をチェックした
・CloudFrontを使う際のポイント
 1)キャッシュTTLの設定(短すぎても長すぎてもダメ)
 2)CloudWatchで監視する
 3)PopularObjectReportを参考に定期的に設定を見直す
   CloudFrontの画面から確認できる。

 

・インメモリキャッシュパターン
 → 頻繁にアクセスする「データ」をDBではなくインメモリキャッシュに格納することでデータベースの負荷を軽減する設計パターン
 → selectが多いデータについては利用価値が高い。またデータの種類によって格納先を変える場合(セッション情報など)
AWS ElastiCache
 → AWSが提供するフルマネージド型インメモリキャッシュサービス
 → セットアップが簡単(レプリ、バックアップが容易)
 → Redis:シングルスレッド、データ永続化可能。
 → Memcached:マルチスレッド、データ永続化不可能。
・ElastiCacheの導入
 → ElasticCache画面でパラメータグループとサブネットグループを作成。
 → サブネットグループには既存のPrivateSubnetを割り当てる。
 → セキュリティグループを作成(BatchとWebサーバからのアクセスを許可)
 → クラスターエンジンRedisで作成する。
   (パラメータグループ、ノードタイプ、サブネットグループ、セキュリティグループを設定)
・redis
 → Batchサーバにredis-cliをインストールし、redisへ接続してみる。
 → データセットのデモ
・ElastiCacheを使う際のポイント
 1)キャッシュするデータの選定
 2)耐障害性への考慮
 3)負荷テストを実施してノードのタイプを決定する

 

今回の受講時間は1時間、ここまでのAWS課金金額は1.65$です。

 

ではまた(o'ω')y-~