Amazon API Gatewayの概要

API Gatewayの役割、提供するAPIタイプ(REST/HTTP/WebSocket)と、CloudFront連携など基本構成を整理します。

Amazon API Gatewayの概要

Amazon API Gatewayは、オンラインサービスへのリクエストを受け付ける機能を提供するAWSのサービスです。リクエストのタイプに応じて複数のAPIをサポートしています。

API Gateway のアーキテクチャ 出典:API Gateway のアーキテクチャ

API Gatewayが提供するAPIの種類

API Gatewayでは、以下の3種類のAPIを作成できます。

| APIの種類 | 主な特徴 | |:--------------|:------------------------------------------------------------| | REST API | - AWS Lambda、HTTPエンドポイント、Mock、AWSサービス、VPCリンクにリクエストを転送できる\n- RESTアーキテクチャスタイルに基づくAPI\n- OpenAPI(Swagger) v2.0/3.0に準拠した定義ファイルからAPI作成や既存APIのインポートが可能\n- ステートレス通信\n- JSON/YAML形式の定義ファイル対応 | | HTTP API | - AWS Lambda、HTTPエンドポイント、AWSサービス、VPCリンクにリクエストを転送できる\n- REST APIよりも軽量かつ実装が簡単で、コスト効率が高い\n- OIDCとOAuth 2.0の認証、CORSデプロイ、自動デプロイ対応\n- ステートレス通信 | | WebSocket API | - AWS Lambda、HTTPエンドポイント、Mock、AWSサービスにリクエストを転送できる\n- WebSocketプロトコルで双方向通信が可能\n- チャットやダッシュボードなどのリアルタイム通信に利用\n- ステートフル通信 |


Amazon CloudFrontとAPI Gatewayの連携

API GatewayのREST APIは、Amazon CloudFrontと連携し、さまざまな統合タイプ(Lambda関数、HTTPエンドポイント、Mock、AWSサービス、VPCリンクなど)を通じて、AWSリソースや外部サービスにリクエストを転送します。


REST APIの詳細

REST APIは、RESTアーキテクチャスタイルに基づくAPIです。クライアントからのリクエストを受け付けるエンドポイントには、以下の3つのタイプがあります:

  1. Lambda関数
  2. HTTPエンドポイント
  3. VPCリンク

それぞれのエンドポイントを通じて、AWSリソースや外部サービスと連携できます。


重要ポイント

  • API GatewayはAPIの受付・公開を担う
  • REST/HTTP/WebSocketの3タイプがある
  • HTTP APIは軽量・低コスト
  • REST APIは高機能で拡張が豊富
  • CloudFrontと連携して配信最適化できる

このトピックの学習を完了しますか?

完了状態はいつでも切り替えられます