メインコンテンツへスキップ
⚡
Exam-Era
高性能アーキテクチャの設計
AWS SAA (SAA-C03) 過去問・解説

マルチテナントの SaaS API の設計において、低遅延・高可用性を保ちながら、セキュリティとコストを両立させたい。多数の顧客が同じ API を利用するが、顧客ごとにレート制限・課金を適用する必要があり、認証は外部 IdP で行いバックエンドは Lambda と API Gateway で構成する。最適な設計はどれか。

AREST API を選択し、テナントごとに API キーと使用量プランを設定して課金・レート制限を実施し、特定の高負荷テナントには個別の Lambda 関数と予約済み同時実行数を割り当てる。
正解 ⭕
⭕
【正解の理由】【正解】 API Gateway REST API の使用量プランと API キーを用いることで、テナントごとのレート制限と課金管理を容易に実現できます。また、特定の高負荷テナントに個別の Lambda 関数と予約済み同時実行数を割り当てることで、他テナントへの影響(ノイジーネイバー問題)を防ぎ、高可用性を維持できます。
BHTTP API を選択し、JWT 認証を用いて認可を行い、すべてのテナントを共通の Lambda 関数で処理し、アプリケーションコード内でテナントごとのレート制限と課金処理を実装する。
誤答
CREST API を選択し、テナントごとに個別の IAM ロールとポリシーを割り当て、Lambda 関数の実行時に動的にロールを切り替えることで、テナント間のアクセス制御と課金管理を行う。
誤答
DREST API を使用せず、すべての API 処理を EC2 インスタンス上のコンテナで稼働するマイクロサービスに移行し、サードパーティ製のプロキシツールを用いてレート制限と課金管理を行う。
誤答

🎯正解の決め手・公式要点まとめ

API Gateway の REST API では、テナントごとに API キーと使用量プラン(Usage Plan)を紐付けることで、顧客ごとの課金やレート制限(スロットリング)を標準機能として容易に実装できます。また、特定の高負荷なテナント(ホットテナント)に対して個別の Lambda 関数を用意し、予約済み同時実行数(Reserved Concurrency)を設定することで、そのテナントの急激な負荷上昇が他のテナントの実行環境を圧迫する「ノイジーネイバー問題」を防ぎ、低遅延と高可用性を両立できます。 HTTP API を選択する構成では、API キーや使用量プランがサポートされていないため、レート制限や課金管理を自前で実装する必要があり、開発・運用コストが増大します。 テナントごとに IAM ロールを動的に切り替える構成は、管理が極めて複雑になり、API Gateway と Lambda の標準的な統合パターンに反するため不適切です。 EC2 上のマイクロサービスに移行する構成は、サーバーレスの利点(自動スケーリング、運用負荷の軽減、コスト効率)を放棄することになり、要件に合致しません。

⚠️ 誤答トラップ・他の選択肢が誤りの詳細理由

この選択肢は〇〇の定義と混同しやすく、本番試験で正答率が落ちる典型的なトラップです...

💡 似た概念との決定的な違い

実務および試験で頻出する関連用語の使い分けは次の3原則で整理できます...

🔒

「誤答トラップ解説」&「全選択肢の個別解説」はPRO会員限定

月額3,000円で全8資格3,200問を解放。毎日演習で翌月実質無料(1日100円学習割)になる逆算サブスク。

アプリで演習を始める(全問解放) ➜

💬ディスカッション・質問スレッド (0)

疑問や改善要望を投稿しよう
スレッドを読み込み中...
Googleアカウントでログインすると質問の投稿やスレッドへの参加ができます。

📚 同分野(高性能アーキテクチャの設計)の類似問題