Amazon API Gateway とは - Amazon API Gateway

Amazon API Gateway とは

Amazon API Gateway は、あらゆる規模の REST、HTTP、WebSocket API を作成、公開、管理、モニタリング、保護するための AWS サービスです。API 開発者は、AWS または他のウェブサービス、AWS クラウドに保存されているデータにアクセスする API を作成できます。API Gateway API 開発者として、独自のクライアントアプリケーションで使用するための API を作成できます。または、API をサードパーティーのアプリ開発者に対して使用可能にできます。詳細については、「API Gateway を使用するユーザー」を参照してください。

API Gateway は、次のような RESTful API を作成します。

  • HTTP ベース。

  • ステートレスなクライアント/サーバー通信を有効にします。

  • GET、POST、PUT、PATCH、DELETE などの標準の HTTP メソッドを実装します。

API Gateway REST API およびHTTP API についての詳細は、「HTTP API または REST API の選択HTTP API の使用API Gateway を使用して REST API を作成するAmazon API Gateway で REST API を作成する」を参照してください。

API Gateway は、以下のような WebSocket API を作成します。

  • WebSocket プロトコルを遵守します。これにより、クライアントとサーバー間のステートフルな全二重通信が可能になります。

  • メッセージの内容に基づいて、受信メッセージをルーティングします。

API Gateway WebSocket API の詳細については、「API Gateway を使用して WebSocket API を作成する」および「API Gateway での WebSocket API について」を参照してください。

API Gateway のアーキテクチャー

API Gateway のアーキテクチャを次の図に示します。


                API Gateway アーキテクチャの図

この図は、Amazon API Gateway で構築した API によって、AWS サーバーレスアプリケーションを構築するための統合的で一貫性のある開発者エクスペリエンスを提供する方法を示しています。API Gateway は、最大数十万の同時 API 呼び出しの受け付けと処理に関連するすべてのタスクを処理します。これにはトラフィック管理、認証とアクセスコントロール、モニタリング、API バージョン管理が含まれます。

API Gateway は、アプリケーションがバックエンドサービスからデータ、ビジネスロジック、機能にアクセスするための「フロントドア」として機能します。たとえば、Amazon Elastic Compute Cloud (Amazon EC2) で実行されているワークロード、AWS Lambda で実行されているコード、ウェブアプリケーション、リアルタイム通信アプリケーションなどです。

API Gateway の機能

Amazon API Gateway は次のような機能を提供します。

API Gateway 機能のリリースの完全なリストについては、「ドキュメント履歴」を参照してください。

API Gateway へのアクセス

Amazon API Gateway には、以下の方法でアクセスできます。

  • AWS マネジメントコンソール – このガイドの手順では、AWS マネジメントコンソール を使用してタスクを実行する方法について説明しています。

  • AWS SDK – AWS が SDK 提供しているプログラミング言語を使用している場合は、SDK を使用して API Gateway にアクセスできます。SDK によって認証が簡素化され、開発環境との統合が容易になり、API Gateway コマンドにアクセスすることができます。詳細については、「アマゾン ウェブ サービスのツール」を参照してください。

  • API Gateway V1 および V2 API – SDK に対応していないプログラミング言語を使用している場合、「Amazon API Gateway バージョン 1 API リファレンス」と「Amazon API Gateway バージョン 2 API リファレンス」を参照してください。

  • AWS Command Line Interface – 詳細については、AWS Command Line Interface ユーザーガイド の「AWS Command Line Interface のセットアップ」を参照してください。

  • AWS Tools for Windows PowerShell– 詳細については、AWS Tools for Windows PowerShell ユーザーガイド の 「AWS Tools for Windows PowerShell の設定」を参照してください。

AWS サーバーレスインフラストラクチャの一部

API Gateway は、AWS Lambda と連携して、AWS サーバーレスインフラストラクチャのうち、アプリケーション向け部分を形成します。

アプリケーションで一般的に利用可能な AWS のサービスを呼び出す場合は、Lambda を使用して必要なサービスを操作し、API Gateway の API メソッドを使用して Lambda 関数を呼び出すことができます。AWS Lambda では、可用性に優れたコンピューティングインフラストラクチャでコードを実行します。また、必要に応じて、コンピューティングリソースを実行および管理します。サーバーレスアプリケーションを有効にするために、API Gateway では、AWS Lambda および HTTP エンドポイントを使用したプロキシ統合の効率化をサポートしています。

Amazon API Gateway の開始方法

Amazon API Gateway の簡単な説明については、以下のトピックを参照してください。