翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
最新のサーバーレスモバイル/ウェブアプリケーションアーキテクチャ
公開日: 2021 年 5 月 10 日 (図の履歴)
このアーキテクチャは、 で最新のサーバーレスモバイルアプリケーションとウェブアプリケーションを構築する方法を示しています AWS。フロントエンドには AWS AppSync、バックエンド処理には AWS Fargate コンテナ上の Amazon ECS を使用し、アプリケーションログと構造化データからインサイトを引き出すには継続的な統合と配信 (CI/CD) と分析を使用します。
最新のサーバーレスモバイル/ウェブアプリケーションアーキテクチャ
次の手順では、アーキテクチャについて説明します。
-
ユーザーは、JWT トークンを取得して Amazon Cognito ユーザープールで認証し、それらのトークンを使用して、アプリが他の AWS サービスにアクセスできるようにする AWS 認証情報を取得します。
-
モバイルクライアントとウェブクライアントはAWS Amplifyフレームワークとやり取りし、iOS、Android、ウェブ、React Native フロントエンドのバックエンドサービスと通信できるようにします。
-
認証されたクライアントは AWS AppSync を呼び出して、クエリ、ミューテーション、サブスクリプションなどの GraphQL オペレーションを実行します。
-
Lambda リゾルバーは、引き受けた IAM ロールに基づく一時的な IAM 認証情報AWS Lambdaを使用して と通信します。認証されたユーザーに固有の JWT トークンは、処理のために Lambda に転送されます。
-
Amazon DynamoDB リゾルバーは、リアルタイムデータの読み取り、書き込み、サブスクライブを行うデータソースを作成して、既存のテーブルを GraphQL スキーマに接続します。
-
Lambda は、新しいデータがデータベーステーブルに到着するたびに DynamoDB から Amazon Elasticsearch Service ドメインにデータを送信し、インデックス作成のために Lambda へのイベント通知をトリガーします。 DynamoDB
-
HTTP リゾルバーとエンドポイントは、一時的な IAM 認証情報で保護されます。JWT トークンは Amazon API Gateway に転送されます。
-
API Gateway は AWS PrivateLink を使用して、アクセスを制御するセキュリティグループを持つ別の VPC で設定された AWS Fargate 上の API Gateway と Amazon Elastic Container Service 間の接続をカプセル化します。
-
Network Load Balancer (NLB) は、AWS Fargate クラスター上の Amazon ECS へのプライベート統合を通じて各サービスに割り当てられた特定のポートで設定され、複数のアベイラビリティーゾーンで実行されます。
-
Amazon ECS on AWS Fargate は、インターフェイス VPC エンドポイントを介して Amazon Elastic Container Registry (Amazon ECR) に接続し、プライベート IP アドレスを介して ECR APIs にプライベートアクセスします。
-
Amazon ECS on AWS Fargate コンテナでホストされているアプリケーションワークロードは、インメモリキャッシュレイヤーの DynamoDB Accelerator (DAX) にアクセスして、頻繁にアクセスされる情報を取得します。
-
DynamoDB は、ACID トランザクションのサポートなど、ミッションクリティカルなワークロード向けにサーバーレスパフォーマンスを大規模に提供します。
-
AWS CodeCommit は、開発者が変更を変更またはコミットするたびにアプリケーションコードを保存するためのリポジトリとして機能します。
-
AWS CodeBuild は、ソースコードをコンパイルし、テストを実行し、動的に作成されたビルドサーバーにデプロイできるソフトウェアパッケージを生成します。
-
AWS CodeDeploy は、開発者の変更に基づいて新機能に関連付けられたコードを使用して、AWS Fargate へのソフトウェアデプロイを自動化します。
-
AWS CodePipeline は、アプリケーションコードを取得し、CodeBuild を使用してビルドおよびテストし、Amazon ECR から Fargate にデプロイするend-to-endのパイプラインを作成します。
-
ビルドプロセスの最新の Docker イメージは Amazon ECR に保存され、高可用性のために複数のアベイラビリティーゾーンにまたがって Fargate にデプロイするためにプルされます。
-
Amazon Redshift は、DynamoDB を高度なビジネスインテリジェンス機能で補完します。DynamoDB テーブルデータは、結合を含む複雑なデータ分析クエリのために Amazon Redshift にコピーされます。
-
AWS Fargate 上の Amazon ECS からの非構造化データは、Amazon Simple Storage Service のデータレイクにほぼリアルタイムで Amazon Amazon Kinesis Data Firehose に送信されます。
-
Amazon Quick Sight は、Amazon Athena をデータソースとして使用して、インタラクティブなビジネスインテリジェンスダッシュボードを作成および公開します。
-
AWS Glue ETL は、AWS Glue データカタログを使用して Amazon Simple Storage Service に保存されているデータに接続し、テーブル名や列名などのメタデータを保存します。
-
Amazon Athena は、Presto を使用して AWS Glue データカタログに登録されたデータを分析して DML ステートメントを処理するインタラクティブなクエリサービスです。
-
ユーザー管理は、クイックスタンダードエディションとエンタープライズエディションで異なります。どちらのエディションも SAML 2.0 を介した ID フェデレーションをサポートしています。
-
Amazon Kinesis Data Firehose はサーバーレスで、送信および処理するデータ量に対してpay-as-you-goで管理する必要はありません。
-
Amazon Pinpoint は、キャンペーン対象者をセグメント化して適切な顧客に到達させ、プッシュ、SMS、E メール、音声に適したコンテンツでメッセージをパーソナライズします。
詳細情報
詳細については、次のリソースを参照してください。
図の履歴
このリファレンスアーキテクチャ図の更新について通知を受け取るには、RSS フィードをサブスクライブします。
| 変更 | 説明 | 日付 |
|---|---|---|
初版発行 | リファレンスアーキテクチャ図が最初に公開されました。 | 2021 年 5 月 10 日 |
注記
RSS 更新をサブスクライブするには、使用しているブラウザで RSS プラグインが有効になっている必要があります。