이 자습서에서는 사용자가 Wild Ryde 플릿에서 유니콘 탑승을 요청할 수 있도록 간단한 서버리스 웹 애플리케이션을 생성합니다. 이 애플리케이션은 사용자가 픽업할 위치를 나타내기 위해 HTML 기반 사용자 인터페이스를 제공하고, 백엔드에서 RESTful 웹 서비스와 연결하여 요청을 제출하고 근처의 unicorn을 디스패치합니다. 또한 이 애플리케이션은 사용자가 서비스에 등록하고 탑승 요청 전에 로그인하기 위한 시설을 제공합니다.

애플리케이션 아키텍처는 아래에서 설명한 것처럼 AWS Lambda, Amazon API Gateway, Amazon DynamoDB, Amazon Cognito, AWS Amplify Console를 사용합니다. Amplify Console은 사용자 브라우저에 로드되는 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로부터 데이터를 전송하고 수신합니다.

이 워크숍은 5개의 모듈로 나뉩니다. 각 모듈은 아키텍처를 구현하고 작업을 확인하는 데 도움이 되는 구축 및 단계별 지침에 대한 시나리오를 설명합니다.
  1. 정적 웹 호스팅
  2. 사용자 관리
  3. 서버리스 백엔드
  4. RESTful API
  5. 리소스 종료 및 다음 단계

AWS 경험: 초보자

완료 시간: 2시간

완료 비용: 이 아키텍처에 사용되는 각 서비스는 AWS 프리 티어 대상입니다. 프리 티어 사용 한도를 넘어선 경우, 이 자습서를 완료하는 데 0.25 USD*가 필요합니다.
 
사전 조건: 이 자습서를 완료하려면 다음이 필요합니다.
  • AWS 계정**
  • 텍스트 편집기
  • 권장 브라우저: 최신 버전의 Chrome

*자습서를 진행하는 동안 권장 구성에 따르고 모든 리소스를 24시간 안에 종료한다고 가정한 경우의 추정치입니다.

**생성된 지 24시간이 지나지 않은 계정은 이 자습서를 완료하는 데 필요한 리소스에 액세스할 권한이 아직 없을 수 있습니다.