AWS ソリューションアーキテクト学習メモ - データ転送とキャッシュ戦略
✅ Amazon EC2 スポットインスタンス
- ユースケース: 状態を持たないバッチ処理で、いつでも中断しても影響がないワークロード
- 利点: オンデマンドインスタンスより最大90%安く、非常にコスト効率が良い
- 注意点: いつ中断されてもよい設計が必要
✅ Amazon ElastiCache(Redis/Memcached)
- 役割: 頻繁にアクセスされるデータをインメモリキャッシュとして保存し、DBへのアクセス負荷を軽減
-
よくある用途:
- 重複クエリの結果キャッシュ
- セッション管理
- ランキング、リアルタイム分析
🔍 Redis の永続化(Persistence)について
- RDB: 一定間隔でスナップショット保存
- AOF: すべての書き込み操作をログに記録
- Durability(耐久性): トランザクション完了後にデータが失われないよう、永続化によって担保される
✅ S3 Gateway VPC エンドポイント
- 目的: NAT Gateway や IGW を使わずに、VPC 内から直接 S3 にアクセス
-
利点:
- データ転送コストの削減(同リージョン内なら無料)
- セキュリティ向上(インターネット経由しない)
✅ CloudFront + S3(静的ウェブサイトホスティング)
-
構成:
- S3(非公開)バケット + CloudFront(OAI経由)
- SFTP の代わりに AWS CLI や SDK でファイルをアップロード
-
理由:
- EC2 や Lightsail よりコスト効率が良く、サーバレスで運用が容易
- CloudFront によるキャッシュで配信性能も向上
✅ SQS(キュー)での優先度制御
-
構成例:
- 有料ユーザー用と無料ユーザー用の2つの標準キューを作成
- 処理アプリケーション側で有料キューを優先してポーリング
- 理由: FIFOキューはコストが高く、順序保証が不要な場合は標準キューの方が経済的
📌 補足:Queueの活用例
- 接続待ち行列(ゲームなど)
- 先着順処理(チケット購入)
- 動画バッファリング(再生用データの一時保存)