AWS の開始方法

サーバーレスのウェブアプリケーションを構築する

AWS Lambda、Amazon API Gateway、AWS Amplify、Amazon DynamoDB、および Amazon Cognito を使用

サーバーレスのウェブアプリケーションを構築する

はじめに: サーバーレスのウェブアプリケーションを構築する

ステップバイステップの指示に従って、ユーザーが Wild Rydes フリートからユニコーンライドをリクエストできるシンプルなサーバーレスウェブアプリケーションを作成する

概要

このチュートリアルでは、ユーザーが Wild Rydes フリートからユニコーンライドをリクエストできるシンプルなサーバーレスウェブアプリケーションを作成します。アプリケーションの HTML ベースのユーザーインターフェイスによって、ユーザーは乗馬する場所を指定できます。またアプリケーションに、バックエンド上で RESTful ウェブサービスとのインターフェイスを持たせることにより、リクエストを送信して近くのユニコーンを手配できます。アプリケーションはさらに、ユーザーがユニコーンに乗ることを要求する前に、サービスに登録してログインするための機能を提供します。

アプリケーションのアーキテクチャ

アプリケーションのアーキテクチャは、AWS LambdaAmazon API GatewayAmazon DynamoDBAmazon Cognito、および AWS Amplify コンソール を使用します。Amplify コンソールは、継続的デプロイと、HTML、CSS、JavaScript、およびユーザーのブラウザにロードされたイメージファイルなどを含む静的なウェブリソースのホストを提供します。ブラウザで実行される JavaScript は、Lambda と API Gateway を使用して構築されたパブリックバックエンド API からデータを送受信します。Amazon Cognito は、バックエンド API を保護するためのユーザー管理機能と認証機能を提供します。さらに、DynamoDB は API の Lambda 関数によってデータを格納できる永続レイヤーを提供します。

Serverless_Architecture
Serverless_Web_App_LP_assets-18

静的ウェブホスティング

AWS Amplify は、HTML、CSS、JavaScript、およびユーザーのブラウザに読み込まれたイメージファイルを含む静的なウェブリソースをホストします。

Serverless_Web_App_LP_assets-19

ユーザー管理

Amazon Cognito は、バックエンド API を保護するためのユーザー管理機能と認証機能を提供します。

Serverless_Web_App_LP_assets-20

サーバーレスバックエンド

Amazon DynamoDB は、API の Lambda 関数によってデータを格納できる永続レイヤーを提供します。

Serverless_Web_App_LP_assets-21

RESTful API

ブラウザで実行される JavaScript は、Lambda と API Gateway を使用して構築されたパブリックバックエンド API からデータを送受信します。

 AWS の使用経験

初心者

 所要時間

2 時間

 完了までのコスト

このアーキテクチャで使用される各サービスは、AWS 無料利用枠の対象となります。無料利用枠を利用できない場合、この学習過程を完了するための費用は 0.25 USD* 未満です。

 チュートリアルの前提条件

使用するテクノロジー:


*この見積もりでは、ユーザーがチュートリアル全体で推奨される構成に従い、24 時間以内にすべてのリソースを終了することを前提としています。
**過去 24 時間以内に作成されたアカウントは、このチュートリアルに必要なリソースへのアクセス権がまだ付与されていない可能性があります。

モジュール

このワークショップは 5 つのモジュールに分かれています。それぞれのモジュールは、これから構築する内容のシナリオとアーキテクチャの実装と作業の検証に役立つステップバイステップの手順について解説します。 

  1. 静的ウェブサイトをホストする (15 分): 継続的デプロイのビルトインでウェブアプリケーションの静的リソースをホストするように AWS Amplify を設定する
  2. ユーザーを管理する (30 分): ユーザーのアカウントを管理するための Amazon Cognito ユーザープールを作成する
  3. サーバーレスバックエンドを構築する (30 分): ウェブアプリケーションのリクエストを処理するためのバックエンドプロセスを構築する
  4. RESTful API をデプロイする (15 分): Amazon API Gateway を使用して、前のモジュールで RESTful API として構築した Lambda 関数を公開する
  5. リソースを終了する (10 分): このチュートリアルで作成したすべてのリソースを終了する

静的ウェブサイトをホスティングする