非同期通信と軽量メッセージング
従来のモノリシックなアプリケーションの通信は非常に明快です。メソッド呼び出しまたは内部のイベント分散メカニズムを使用すれば、アプリケーションのパーツ間で相互に通信できます。同じアプリケーションをデカップリングされたマイクロサービスを使用して実装する場合、アプリケーションのパーツ間の通信は、ネットワーク通信を使用して実装する必要があります。
REST ベースの通信
HTTP/S プロトコルは、マイクロサービス間の同期通信を実装するための最も一般的な方法です。ほとんどの場合、RESTful API では HTTP が転送レイヤーとして使用されます。REST アーキテクチャスタイルでは、ステートレスな通信、統一されたインターフェイス、標準メソッドが使用されます。
API Gateway の場合は、アプリケーションの玄関口として機能する API を作成し、バックエンドサービスからデータ、ビジネスロジック、機能にアクセスできます。API デベロッパーは、AWS や他のウェブサービスにアクセスする API を作成し、さらに AWS クラウド内に保存されているデータにアクセスする API を作成できます。API Gateway サービスを使って定義された API オブジェクトはリソースとメソッドのグループです。
リソースは API のドメイン内にある型付きオブジェクトで、他のリソースにデータモデルまたはリレーションシップを関連付けている場合があります。各リソースは、1 つまたは複数のメソッド、つまり、GET、POST、PUT といった標準的な HTTP 動詞に応答するように設定できます。REST API は、さまざまなステージへのデプロイ、バージョニング、新しいバージョンへの複製が可能です。
API Gateway は、トラフィック管理、認可とアクセスコントロール、モニタリング、API のバージョン管理など、数十万件までの同時 API コールの受信と処理に伴うすべてのタスクに対応します。