無限ノック › SOA 練習問題一覧 › 問題SOA モニタリング、ロギング、分析、修復、およびパフォーマンスの最適化 複数選択
ある企業はAmazon ElastiCache for Redisをセッションキャッシュとして運用しています。CloudWatchでEvictionsメトリクス(エビクション数:メモリ不足により強制削除されたキーの数)の急増を確認しており、アプリケーションのキャッシュヒット率が低下しています。この問題を診断・解決するための最も適切なアクションを2つ選んでください。
A CloudWatchのCurrConnectionsメトリクス(現在の接続数)を監視し、接続数の上限に達していないか確認する
CurrConnectionsは接続数を示すメトリクスであり、メモリ不足によって発生するエビクションの原因特定には直接関係しません。
B DatabaseMemoryUsagePercentageメトリクスを確認し、メモリ使用率が高い場合はノードタイプをスケールアップするか、クラスターモードのシャード数を増やして水平スケールする
✓ 正解
DatabaseMemoryUsagePercentageでメモリ使用率を確認し、高い場合はノードのスケールアップやシャード追加で容量を拡張すれば、メモリ不足によるエビクションを根本的に解消できます。
C ElastiCacheのslowlog(スロークエリログ)を有効化してCloudWatch Logsに転送し、実行時間の長いコマンドを特定してアプリケーション側のロジックを最適化する
slowlogは実行時間の長いコマンドを特定する機能であり、メモリ不足が原因のエビクション問題の診断・解決には対応していません。
D EventBridgeでEvictionsアラームをトリガーにLambda関数を起動し、ElastiCacheクラスターを自動削除・再作成するワークフローを構成する
Evictionsをトリガーにクラスターを自動削除・再作成する操作はデータ損失を伴う破壊的な構成であり、解決策として不適切です。
E Redisのmaxmemory-policy設定を確認し、アプリケーションの使用パターンに合わせてallkeys-lruなどの適切なエビクションポリシー(削除優先順位ポリシー)に変更する
✓ 正解
maxmemory-policyをallkeys-lru等アプリ要件に合ったポリシーに変更すると削除優先度を制御でき、重要なキーが残りやすくなりエビクションの影響を緩和できます。
解説 Evictionsの急増はメモリ不足のサインです。DatabaseMemoryUsagePercentageが高い場合はノードタイプのスケールアップまたはシャード追加でメモリ容量を拡張します。また、maxmemory-policyをallkeys-lru(全キーに対してLRU方式で削除)などアプリケーション要件に合ったポリシーに設定することで、エビクションの優先度を制御し、重要なキーが削除されにくくなります。
選択肢AのCurrConnections(現在の接続数)はメモリ不足によるエビクション原因特定には関係しません。
選択肢Cのslowlog(スロークエリログ)はコマンド実行時間の長いクエリを特定するものであり、メモリ不足によるエビクション問題の診断・解決には対応していません。
選択肢DのクラスターのAutomatic削除・再作成はデータ損失を伴う破壊的操作であり不適切です。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでSOAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →