type
status
date
slug
summary
tags
category
icon
password
书籍
 

理論

1. Amazon API Gateway

Amazon API Gatewayは、AWS Lambdaなどのバックエンドサービスと連携して、HTTPリクエストを受けるAPIを構築するためのサービスです。API Gatewayには、リクエストの制限やスロットリング、認証、APIキーの管理など、複数の機能があります。
  • 使用プラン: API Gatewayには「使用プラン(Usage Plan)」という機能があり、これを使って顧客ごとにリクエストの制限を設定できます。使用プランは、1分あたりや1日あたりの最大リクエスト数などを設定できるため、特定の顧客に異なるリクエストクォータを設定するのに適しています。
  • APIキーの管理: 各顧客に対してAPIキーを発行し、そのAPIキーを使用して顧客ごとにリクエストのトラッキングと制限を行うことができます。これにより、個々の顧客に対応したクォータ管理が可能になります。

2. Amazon API Gateway HTTP API vs REST API

API Gatewayには、HTTP APIREST APIの2つの主なタイプがあります。どちらもAPIを作成するために使用できますが、いくつかの違いがあります。
  • REST API: より多機能で、特にリクエスト制限やクォータ管理の面では優れています。顧客ごとに詳細な設定が可能で、API Gatewayの「使用プラン」や「スロットリング」機能と組み合わせて、きめ細かい制御ができます。
  • HTTP API: よりシンプルで軽量なAPIを提供し、基本的な機能に特化しています。リクエスト制限やクォータ設定に関しては、REST APIよりも機能が少なく、複雑な管理が必要な場合には不向きです。

3. AWS LambdaとAPI Gatewayの連携

AWS Lambdaは、サーバーレスアーキテクチャを支えるサービスで、バックエンドのロジックを処理するために利用されます。Lambda関数は、API Gatewayを通じてHTTPリクエストを受け取ることができます。顧客ごとに異なるリクエストクォータを設定する場合、API Gatewayの使用プランを活用することで、各顧客のリクエスト数を制限し、Lambda関数を適切に管理することが可能になります。

4. AWS WAFを利用したリクエスト制限

AWS WAF(Web Application Firewall)は、Webアプリケーションに対する攻撃や不正なリクエストを防ぐためのサービスですが、これを使ってリクエストを制限することもできます。しかし、API Gatewayの使用プランを利用する方が、クォータ管理には適しています。WAFを利用した制限は、特定の条件を基にした制御が可能ですが、リクエストの数に基づいた細かい制限設定には限界があります。

5. Lambda関数の個別管理

Lambda関数を顧客ごとに分けて管理する方法もあります。例えば、顧客ごとに異なるLambdaエイリアスを作成し、エイリアスごとにスロットリング制限をかけることも考えられます。しかし、API Gatewayを使った方がより柔軟かつ効率的にクォータ管理ができるため、この方法は一般的にはあまり推奨されません。

結論

顧客ごとにリクエストのクォータを設定するには、Amazon API Gateway REST APIを使用する方法が最も適しています。API Gatewayの使用プラン機能を使うことで、顧客ごとに異なるリクエスト数を設定し、APIキーによるアクセス管理を行うことができるため、柔軟で効率的なクォータ管理が実現できます。

実践

一問道場

問題 #301

トピック 1
ある企業がAWS Lambda関数で実行されるアプリケーションを構築しています。数百人の顧客がこのアプリケーションを使用する予定です。この企業は、各顧客に対して特定の時間帯にリクエストのクォータを設定したいと考えています。クォータは顧客の使用パターンに合致させる必要があります。一部の顧客には、短期間でより高いクォータを提供する必要があります。
この要件を満たすソリューションはどれですか?
A. Amazon API Gateway REST APIを作成し、プロキシ統合を使用してLambda関数を呼び出します。各顧客に対して、適切なリクエストクォータを含むAPI Gatewayの使用プランを構成します。顧客に必要なAPIキーを使用プランから作成します。
B. Amazon API Gateway HTTP APIを作成し、プロキシ統合を使用してLambda関数を呼び出します。各顧客に対して、適切なリクエストクォータを含むAPI Gatewayの使用プランを構成します。ルートレベルでスロットリングを設定して、各使用プランに対してAPIキーを作成します。
C. 各顧客のためにLambda関数のエイリアスを作成し、適切なリクエストクォータと並行制限を設定します。各関数エイリアスに対してLambda関数URLを作成します。各顧客に関連するLambda関数URLを共有します。
D. VPC内にアプリケーションロードバランサー(ALB)を作成し、Lambda関数をALBのターゲットとして設定します。ALBのためにAWS WAFウェブACLを設定します。各顧客に対して、適切なリクエストクォータを含むルールベースのルールを設定します。

解説

この問題では、AWS Lambda関数を使用して実行されるアプリケーションのリクエストクォータを顧客ごとに管理する方法を尋ねています。要件は、顧客に応じた適切なリクエストクォータを設定し、短期間で異なるクォータを設定できることです。

各選択肢の解説

A. Amazon API Gateway REST APIを作成し、プロキシ統合を使用してLambda関数を呼び出す
  • 適切な選択肢
  • API Gatewayの使用プラン機能を活用して、顧客ごとにリクエストクォータを設定できます。これにより、顧客ごとに異なるクォータを設定でき、顧客ごとに個別のAPIキーを提供することができます。これにより、リクエストの管理が柔軟になります。
  • 理由: API Gatewayの使用プランとAPIキーによって、顧客ごとのリクエストクォータを細かく制御でき、要件に合致しています。
B. Amazon API Gateway HTTP APIを作成し、プロキシ統合を使用してLambda関数を呼び出す
  • API Gateway HTTP APIは、REST APIよりもシンプルで軽量なAPIを提供しますが、リクエストクォータの設定やルートレベルでのスロットリング管理に関しては、REST APIよりも柔軟性に欠ける部分があります。
  • 理由: REST APIよりも機能が制限されているため、より詳細なクォータ管理が必要な場合には不向きです。
C. 各顧客のためにLambda関数のエイリアスを作成し、適切なリクエストクォータと並行制限を設定する
  • Lambda関数のエイリアスを使用することで、各顧客ごとに異なるエイリアスを使用してリソースを分離できますが、リクエストクォータの管理には手間がかかり、API Gatewayのように詳細な管理を行うことはできません。
  • 理由: エイリアスと並行制限を使う方法は、クォータ管理には向いていません。Lambda関数単独でクォータを管理する機能は限られているため、API Gatewayのほうが適切です。
D. アプリケーションロードバランサー(ALB)を作成し、Lambda関数をターゲットとして設定する
  • ALBを使用することで、トラフィックをLambda関数にルーティングできますが、ALBとAWS WAFを使用してリクエストクォータを設定する方法は、API Gatewayの使用プランを使った方法よりも効果的ではありません。
  • 理由: WAFでリクエスト制限を行うことは可能ですが、API Gatewayのように簡単にクォータを設定・管理できるわけではなく、実装が複雑になる可能性があります。

結論

選択肢Aが最適です。API Gateway REST APIを使用して、顧客ごとに異なるリクエストクォータを設定し、APIキーを利用してアクセスを管理する方法が、柔軟で管理が簡単です。
相关文章
クラウド技術の共有 | AWS Site-to-Site
Lazy loaded image
EKSでのWordPressデプロイ:KCNA-JP試験対策 (Kubernetes実践編)
Lazy loaded image
初心者向け!コンテナ化WordPressサイト構築ガイド(超詳細版)
Lazy loaded image
EFSを活用!AWS EC2でDockerを使ったWordPressサイト構築
Lazy loaded image
529-AWS SAP AWS 「理論・実践・一問道場」VPCエンドポイント
Lazy loaded image
528-AWS SAP AWS 「理論・実践・一問道場」Migration Evaluator
Lazy loaded image
302-AWS SAP AWS 「理論・実践・一問道場」AWS MGN300-AWS SAP AWS 「理論・実践・一問道場」Athena port
Loading...
みなみ
みなみ
一个普通的干饭人🍚
最新发布
35条書面-64問-1
2025年6月13日
TOKYO自習島
2025年6月10日
平成26年秋期 午後問1
2025年6月6日
令和5年秋期 午後問1
2025年6月6日
令和2年秋期 午後問1
2025年6月6日
業務上の規制-87問-1
2025年6月4日
公告

🎉 欢迎访问我的博客 🎉

🙏 感谢您的支持 🙏

📅 本站自 2024年9月1日 建立,致力于分享在 IT・MBA・不动产中介 等领域的学习与实践,并推动 学习会 的自主开展。
📖 博客语言使用比例
🇯🇵 日语 90% 🇨🇳 中文 8% 🇬🇧 英语 2%

📚 主要内容

💻 IT・系统与开发

  • 系统管理:Red Hat 等
  • 容器与编排:Kubernetes、OpenShift
  • 云计算:AWS、IBM Cloud
  • AI 入门:人工智能基础与实践
  • 技术笔记与考证经验

🏠 不动产 × 宅建士

  • 宅建士考试笔记

🎓 MBA 学习笔记

  • 管理学、经济学、财务分析等

🔍 快速查找内容(标签分类)

由于网站目前没有专门的设计,可能会导致查找信息不便。为了更快找到你感兴趣的内容,推荐使用以下标签功能 进行搜索!
📌 定期更新,欢迎常来看看!
📬 有任何建议或想法,也欢迎留言交流!