AWS 시작하기

서버리스 웹 애플리케이션 구축

AWS Lambda, Amazon API Gateway, AWS Amplify, Amazon DynamoDB, Amazon Cognito 사용

소개: 서버리스 웹 애플리케이션 구축

단계별 지침에 따라 사용자가 Wild Ryde 플릿에서 유니콘 탑승을 요청할 수 있는 간단한 서버리스 웹 애플리케이션을 생성합니다.

개요

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

사전 요구 사항

이 자습서를 완료하려면 AWS 계정, AWS CLI가 설치되어 있어야 하며, 앱에 매핑을 추가할 수 있는 ArcGIS가 있는 계정, 텍스트 편집기, 웹 브라우저가 필요합니다. 아직 AWS 계정이 없는 경우, AWS 환경 설정 시작하기 가이드에 따라 간략한 개요를 확인할 수 있습니다.

애플리케이션 아키텍처

애플리케이션 아키텍처는 AWS Lambda, Amazon API Gateway, Amazon DynamoDB, Amazon Cognito, AWS Amplify 콘솔을 사용합니다. Amplify Console은 사용자 브라우저에 로드되는 HTML, CSS, JavaScript 및 이미지 파일을 포함한 정적 웹 리소스의 지속적인 배포 및 호스팅을 제공합니다. 브라우저에서 실행된 JavaScript는 Lambda 및 API Gateway를 사용하여 내장된 퍼블릭 백엔드 API로부터 데이터를 전송하고 수신합니다. Amazon Cognito는 백엔드 API를 보호하기 위한 인증 기능과 사용자 관리 기능을 제공합니다. 마지막으로, DynamoDB는 API의 Lambda 함수가 데이터를 저장할 수 있는 영구 계층을 제공합니다.

정적 웹 호스팅

AWS Amplify는 HTML, CSS, JavaScript, 이미지 파일 등과 같이 사용자의 브라우저에 로드되는 정적 웹 리소스를 호스팅합니다.

사용자 관리

Amazon Cognito는 백엔드 API를 보호하기 위한 인증 기능과 사용자 관리 기능을 제공합니다.

서버리스 백엔드

Amazon DynamoDB는 API의 Lambda 함수가 데이터를 저장할 수 있는 영구 계층을 제공합니다.

RESTful API

브라우저에서 실행된 JavaScript는 Lambda 및 API Gateway를 사용하여 내장된 퍼블릭 백엔드 API로부터 데이터를 전송하고 수신합니다.

 AWS 경험

초보자

 소요 시간

2시간

 완료 비용

이 아키텍처에 사용되는 각 서비스는 AWS 프리 티어 대상입니다. 프리 티어 사용 한도를 넘어선 경우, 이 자습서를 완료하는 데 0.25 USD*가 필요합니다.

 필요 사항

사용 기술:


*자습서를 진행하는 동안 권장 구성에 따르고 모든 리소스를 24시간 이내에 종료한다고 가정한 경우의 추정치입니다.
**생성된 지 24시간이 지나지 않은 계정은 이 자습서를 완료하는 데 필요한 리소스에 액세스할 권한이 아직 없을 수 있습니다.

 최종 업데이트 날짜

2023년 9월 5일

모듈

이 자습서는 5개의 모듈로 구성되어 있습니다. 각 모듈은 아키텍처를 구현하고 작업을 확인하는 데 도움이 되는 구축 및 단계별 지침에 대한 시나리오를 설명합니다. 

  1. 정적 웹 사이트 호스팅(15분): 지속적인 배포가 내장된 웹 애플리케이션의 정적 리소스를 호스팅하도록 AWS Amplify를 구성합니다.
  2. 사용자 관리(30분): 사용자의 계정을 관리하기 위한 Amazon Cognito 사용자 풀을 만들어 봅니다.
  3. 서버리스 백엔드 구축(30분): 웹 애플리케이션에 대한 요청을 처리하기 위한 백엔드 프로세스를 만듭니다.
  4. RESTful API 배포(15분): Amazon API Gateway를 사용하여 이전 모듈에서 구축한 Lambda 함수를 RESTful API로 공개합니다.
  5. 리소스 종료(10분): 이 자습서에서 생성한 리소스를 모두 종료합니다.

이 페이지의 내용이 도움이 되었나요?

정적 웹 사이트 호스팅