SAAコスト最適化されたアーキテクチャの設計
あるスタートアップが、モバイルアプリのバックエンドAPIをAmazon API Gateway REST APIとAWS Lambdaで構築しています。月間APIコール数が急増して5億回を超え、API Gatewayの請求額が予算を大幅に超過しています。現在の用途はLambdaプロキシ統合のみで、AWS WAFや使用量プランは利用していません。認証はJWTベースで実装されています。コストを最も効率よく削減できる方法はどれですか?
AAPI Gatewayのレスポンスキャッシュ機能を有効にしてLambda呼び出し回数を削減し、キャッシュ容量を最大に設定する
API Gatewayのキャッシュはバックエンドへのリクエスト数を減らしますが、キャッシュ機能自体にも追加料金が発生します。APIコールの課金単価は変わらないため、5億コールに対するコスト削減効果は限定的で根本的な解決にはなりません。
BAPI Gateway REST APIをHTTP APIに移行することで、プロキシ統合とJWT認証を維持しながらコールあたりの単価を大幅に下げる
✓ 正解
HTTP APIはREST APIと比べてコールあたりの料金が約70%安く($3.50→$1.00/百万コール)、JWT AuthorizerとLambdaプロキシ統合をネイティブサポートします。既存の機能を維持したまま最大のコスト削減効果が得られる最適な移行先です。
CAPI Gatewayの前段にAmazon CloudFrontを配置し、キャッシュによってAPI Gatewayへのリクエスト数を減らして請求を削減する
APIレスポンスは通常ユーザーごとに動的なため、CloudFrontでのキャッシュ効果は低く、API Gatewayへのリクエスト数はほとんど変わりません。CloudFrontの利用コストが追加で発生するだけになる可能性が高く、コスト削減の効果は期待できません。
DREST APIをApplication Load Balancer(ALB)に置き換え、LambdaをターゲットグループとしてAPI Gatewayを廃止する
ALBは高トラフィックでは安価になりますが、JWT認証の実装が複雑化します。またAPIキー管理・スロットリング・使用量プランなどAPI Gatewayの管理機能が失われ、運用負荷が増加します。コスト削減効果よりデメリットが上回る可能性があります。
解説
Amazon API Gateway HTTP APIは、REST APIと比較してシンプルなプロキシ統合向けに最適化されており、コールあたりの料金が約70%安くなっています(REST API: $3.50/百万コール → HTTP API: $1.00/百万コール)。月間5億コールでは$1,250以上の削減が見込めます。JWT認証はHTTP APIのネイティブ機能「JWT Authorizer」としてサポートされているため、既存の認証ロジックをそのまま移行できます。Lambdaプロキシ統合も完全対応しており、機能面での制約はほとんどありません。
選択肢AのAPI Gatewayキャッシュは、Lambda呼び出し回数を削減する効果がありますが、キャッシュ自体にも追加費用が発生します。APIコール課金の単価自体は変わらないため、根本的なコスト削減にはなりません。
選択肢CのCloudFront配置は、動的なAPIレスポンスは通常キャッシュが困難であり、API Gatewayへのリクエスト数はほとんど変わりません。CloudFrontの追加コストが発生するだけになる可能性が高いです。
選択肢DのALBへの置き換えは、非常に高いトラフィックではALBの方が安価になる場合もありますが、JWT認証の実装が複雑になり、APIキー管理やスロットリングなどのAPI Gatewayの管理機能が失われます。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでSAAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →