Q68 — AWS SAA-C03 第14章
第 68/100 問 | ← 第14章
Q1068. 最近のマーケティングキャンペーンをきっかけに、SNSアプリケーションが大量の新規ユーザー登録リクエストを受け付けています。このアプリケーションは Amazon RDS for MySQL インスタンスによって提供されています。ソリューションアーキテクトがデータベースのパフォーマンスを調査したところ、CPU 使用率が非常に高く、「接続数が多すぎます(too many connections)」というエラーが多数発生しており、その結果、データベースへのリクエストが失敗しています。ソリューションアーキテクトは、これらの失敗リクエストを解消する必要があります。この要件を満たすソリューションはどれですか?
- A. Amazon DynamoDB Accelerator(DAX)クラスターをデプロイし、アプリケーションがこのDAXクラスターを利用するように設定します。
- B. RDS Proxy をデプロイし、アプリケーションがこのRDS Proxyを利用するように設定します。 ✓
- C. データベースを Amazon RDS for PostgreSQL インスタンスに移行します。
- D. Amazon ElastiCache(Redis OSS)クラスターをデプロイし、アプリケーションがこのElastiCacheクラスターを利用するように設定します。
正解: B. RDS Proxy をデプロイし、アプリケーションがこのRDS Proxyを利用するように設定します。
解説
Amazon RDS for MySQL インスタンスにおける高CPU使用率および「too many connections」エラーを解消する最も適切なソリューションは、以下のとおりです: B. RDS Proxy をデプロイし、アプリケーションがこのRDS Proxyを利用するように設定します。 解説: ・RDS Proxy:これはアプリケーションとRDSデータベース間の中間層として機能するサービスであり、データベース接続を効率的に管理するために接続プールを提供します。これにより、データベースに直接到達する接続数が削減され、高CPU使用率や接続数制限によるエラーを軽減し、ユーザー増加時のリクエスト急増にも耐えられるようになります。 他の選択肢: ・A. Amazon DynamoDB Accelerator(DAX)クラスター:DAXはDynamoDB専用のキャッシュサービスであり、RDS for MySQLには対応しておらず、接続問題や高CPU使用率の解消には一切寄与しません。 ・C. Amazon RDS for PostgreSQL へのデータベース移行:PostgreSQLには異なるパフォーマンス特性があるかもしれませんが、データベースエンジンの変更は即時の接続問題解決にはならず、アプリケーション側の大幅な変更も必要となります。 ・D. Amazon ElastiCache(Redis OSS)クラスター:キャッシュにより頻繁にアクセスされるデータのデータベース負荷を軽減できますが、接続管理や高CPU使用率の根本原因には直接対処できません。 結論: 選択肢Bが最も適切です。RDS ProxyはRDSインスタンスへの接続を効果的に管理し、CPU負荷を低減するとともに「too many connections」エラーを防止し、高トラフィック下でのアプリケーションのスケーリングを可能にします。