シングルページアプリケーション - AWS によるサーバーレス多層アーキテクチャ: Amazon API Gateway と AWS Lambda の使用

シングルページアプリケーション

AWS architecture diagram showing interactions between services like CloudFront, S3, Lambda, and DynamoDB.

サーバーレスシングルページアプリケーションのアーキテクチャパターン

表 2 - シングルページアプリケーションのコンポーネント

コンポーネント
プレゼンテーション層

Simple Storage Service (Amazon S3) でホストされ、CloudFront によって配布される静的ウェブサイトコンテンツ。

AWS Certificate Manager では、カスタムの SSL/TLS 証明書を使用できます。

ロジック層

API Gateway と AWS Lambda。

このアーキテクチャでは、3 つの公開されたサービス (/tickets/shows/info) が示されています。API Gateway エンドポイントは Lambda オーソライザーによって保護されます。この方法では、ユーザーはサードパーティーの ID プロバイダーを通じてサインインし、アクセストークンおよび ID トークンを取得します。これらのトークンは API Gateway 呼び出しに含まれており、Lambda オーソライザーはこれらのトークンを検証して、API 開始アクセス許可を含む IAM ポリシーを生成します。

各 Lambda 関数には独自の IAM ロールが割り当てられ、適切なデータソースへのアクセスを提供します。

データ層

Amazon DynamoDB は、/tickets および /shows の各サービスに使用されます。

Amazon ElastiCache は、データベースのパフォーマンスを向上させるために /shows サービスによって使用されます。キャッシュミスは DynamoDB に送信されます。

Simple Storage Service (Amazon S3) は、/info service が使用する静的コンテンツをホストするために使用されます。