【学習記録】勉強メモ2021/08/17

本日勉強したことをメモします。

Route53の注意点

docs.aws.amazon.com

・HTTPヘルスチェックがweighted resource レコードセットに設定されていないと、サーバーが停止していてもヘルシーだと判断してしまい、トラフィックが送られ続ける。
・「Ebaluate Target Health」がYesに設定されていないと、そのリージョンにある停止しているサーバーをヘルシーだと判断しトラフィックが送られ続ける。

DynamoDBのオンデマンドキャパシティが有効なケース

DynamoDBのオンデマンドキャパシティは以下のようなケースで有効。
・新規アプリケーションにおいて、ワークロードが複雑で予測できない場合
・アプリケーションに時々大きな負荷がかかる場合
・サーバーレススタックで使用量に応じた課金のモデルになっている場合

以下のような状況ではオンデマンドキャパシティは適していない
・read/writeトラフィックが安定しているDynamoDBテーブル
・DynamoDBのread/writeスループットが平日は安定しているが、週末に上がる場合
->トラフィックの増加が予測可能であれば、Auto Scalingを用いたプロビジョンドキャパシティが適している

ELBからの通信でクライアントのIPアドレスを取得する

ELBからの通信でクライアントのIPアドレスを取得する必要がある場合、アプリケーションの処理でx-forwrd-forヘッダーからクライアントのIPアドレスを取得するよう実装する。

docs.aws.amazon.com

S3 Intelligent Tierを使ってコストを最適化する

S3に置かれてるファイルの中で、頻繁にアクセスされないものがあるが各ファイルがどれぐらいアクセスされるかを予測できない場合はS3 Intelligent Tierを使って、アクセスパターンに応じて自動で最適にストレージクラスを割り当てることができる。
GlacierはS3 Intelligent Tierでの最適化には含まれていないようで、アクセスするのに数時間かかってもいいものを格納する用途で使う。

長期間使うアプリケーションで高負荷が予想される場合の対策

長期間使うアプリケーションで高負荷が予想される場合は以下の対策が考えられる。
・Cluster Placement GroupsにEC2を配置する。
->同じAZ内の仮想マシーン間で安定した通信ができ、低レイテンシーネットワークが期待できるため。

・ コスト削減のためリザーブインスタンスを使用する。