'React.js, 스프링 부트, AWS로 배우는 웹 개발 101'을 읽고 정리한 글입니다.
서비스 개발 및 운영에 대해 전반적인 경험을 할 수 있다. 다수의 사용자를 지원하는 웹 기반의 Todo 애플리케이션을 구현하고 배포한다. 그 과정에서 프론트엔드와 백엔드 서버가 분리된 아키텍처를 직접 경험하고 구현한다.
- 프론트엔드 - React.js
- 백엔드 - 스프링 부트
Todo 애플리케이션의 기본적인 기능을 구현한 후, 인증 기능을 추가해 다수의 사용자를 지원할 예정이다.
- 백엔드에서는 JWT를 이용해 스케일의 한계를 극복하는 방법
- 프론트엔드에서는 로그인 상태를 유지하는 방법에 대해 알아보고 구현
- 만든 애플리케이션을 AWS에 배포
로드 밸런서, 오토스케일링그룹 등 스케일링에 필요한 서비스를 사용하고 도메인을 구매하고 HTTPS를 위한 인증서를 발급받아 설치하는 작업까지 할 예정이다. 이렇게 전반적으로 웹 애플리케이션을 개발하고 운영하는 과정을 거치면 이후 다른 아키텍처, 다른 프레임워크, 다른 클라우드 서비스를 공부할 때 훨씬 수월하다.
다루는 내용
- REST 백엔드, React 프론트엔드, AWS를 이용한 간단한 Todo 애플리케이션 개발
- 스프링 부트, Gradle, Maven Repository, Lombok, JPA 등 REST API 개발에 필요한 내용
- React.js의 원리와 프론트엔드 개발에 필요한 기초 지식 설명
- React.js와 같은 싱글 페이지 애플리케이션의 동작 방식 설명
- JWT를 이용한 인증 이론과 구현
- AWS elastic beanstalk을 이용해 애플리케이션을 배포하는 방법 및
배포 시 사용되는 EC2, 오토 스케일링 그룹, 로드 밸런서, RDS 등의 리소스 설명 - Route 53에서 DNS를 등록하는 방법과 DNS를 로드 밸런서로 연결하는 방법 설명