AWS Amplify로 프론트엔드 GitHub 자동 배포를 구성하고 Lambda, API Gateway, DynamoDB로 백엔드를 구성하는 서버리스 풀스택 웹 애플리케이션 구축 과정을 다룬다. 온프레미스 대비 AWS 관리형 서비스의 장점을 간단한 로그인 페이지 구현 사례로 실증한다.
핵심 포인트- AWS Amplify는 GitHub 연동 자동 배포와 CDN 기반 글로벌 배포를 클릭 몇 번으로 구성한다.
- Python Lambda 함수가 DynamoDB에 저장된 사용자 정보를 조회해 로그인 검증 로직을 처리한다.
- API Gateway REST API(GET 메서드)로 Amplify 프론트엔드와 Lambda 백엔드를 연결한다.
- DynamoDB를 RDS 대신 선택해 관리 부담과 비용을 낮추고 서버리스 아키텍처를 완성했다.
상세 정리- 목표: 온프레미스보다 쉽고 확장 가능한 AWS 풀스택 아키텍처를 검증하기 위해 로그인 기능을 가진 간단한 웹 앱을 구현했다.
- AWS Amplify 프론트엔드: GitHub 저장소에 코드를 푸시하면 Amplify가 자동 빌드·배포하고 접근 가능한 URL을 제공한다. CDN이 내장돼 전 세계에서 빠른 로딩이 가능하다.
- DynamoDB 선택 이유: RDS 대비 비용 효율적이고 서버리스 특성상 인스턴스 관리가 불필요하다. 로그인 검증용 사용자 데이터를 저장한다.
- Lambda 함수 구현: Python으로 작성한 Lambda 함수가 DynamoDB에 저장된 정보와 입력 데이터를 비교해 검증하고 성공/실패 메시지를 반환한다.
- API Gateway 연결: GET 메서드 REST API를 생성해 Amplify 프론트엔드에서 Lambda를 호출하는 엔드포인트를 만들었다.
- IAM 접근 제어: 각 서비스 간 권한을 IAM으로 설정해 불필요한 접근을 차단했다.
- 주요 장점: 서버 설정 없는 빠른 배포, CDN 내장 성능, Lambda + DynamoDB의 높은 확장성.
왜 읽나AWS Amplify + Lambda + API Gateway + DynamoDB로 서버리스 풀스택 앱을 처음 구축하는 개발자에게 각 서비스 역할과 연결 방법을 설명하는 실습 입문 가이드.