본문 바로가기
Work/책 정리

[리뷰] 풀스택 서버리스

by ★용호★ 2021. 7. 25.
한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

 

사이드 프로젝트를 진행하면서 조금 더 빠르고 효율적으로 개발 할 수 있는 방법을 찾다보니 AWS의 Amplify라는 것에 관심이 있었고, 시도해보기도 했었다. 처음 Amplify를 접했을 때 다들 편하다고는 하는데 정말 프로덕션에서 사용할 수 있을까에 대한 의구심을 가지고 있었다. 예를 들어 사용자 로그인 화면을 Amplify를 사용하면 미리 만들어져있는 UI 템플릿과 Amazon Cognito를 연동해서 손쉽게 만들어주는데 편하긴 하지만 우리 서비스에 맞는 사용자 정보와 로그인 UI 제작이 가능할지, API 요청이나 데이터 조회도 클라이언트가 원하는 스키마로 요청이 가능하기 때문에 다른 사용자의 정보까지 가지고 오지는 않는지, S3에 파일 업로드 시 기존 방식처럼 백엔드 서버의 검증 이 후 업로드하는 것이 아니라 클라이언트에서 바로 업로드나 다운로드가 가능하다면 다른 사용자의 데이터에 접근하는 것은 아닌지 등등 많은 의문이 있었다. 그래서 처음에 이런 감을 잡기가 굉장히 어려웠는데 이 책 풀스택 서버리스에서는 이런 궁금증을 대부분 해소시켜주는 고마운 책이었다. 

 

책의 목차도 내가 궁금해 했던 순서대로 짜여져 있어서 책을 읽어나가며 하나씩 알게되니까 재미를 느끼며 읽을 수 있었고, 다양한 프로젝트와 예제 코드들이 포함되어 있어서 직접 따라해볼 수 있기 때문에 재미를 더 했다. 책의 중,후반부에 가게 되면 Amplify의 사용방법 뿐만 아니라 실무에서 이미지 업로드 시 사이즈 조절과 같은 실무에 적용해도 괜찮을 법한 예제들도 포함되어 있었다. 

책을 다 읽고나서 느낀 점은 Amplify에 대한 사용방법을 제대로 이해햐고 익힌다면 모바일 앱이나 웹 서비스를 빠르게 구현할 수 있을 것 같았다. 또한 Lambda 와 AppSync, DynamoDB를 결합하면 복잡하지 않은 CRUD API를 제공하는 서비스에서는 프론트엔드 개발자가 충분히 백엔드 개발자가 없이도 서비스를 런칭할 수 있을 만큼 강력한 도구라는 생각이 들었다. 이렇게 구성하고나면 가장 큰 장점은 인프라 측면에서 관리해야할 서버가 존재하지 않는 다는 것이다. 즉, 서버리스 아키텍처를 구성할 수 있기 때문에 사용자 트래픽 증감에 신경쓰지 않아도 되고, 개발에 집중할 수 있다는 것이다. 비용 측면에서도 굉장히 효율적인데 초기에 런칭한 서비스는 일정 수준의 사용자를 확보하기 전까지는 사용률이 적을 확률이 높고, 이 경우 서버리스 아키텍처에서는 사용한 만큼만 과금되기 때문에 (프리티어를 사용 중이라면)거의 제로에 가까운 비용으로 서비스를 유지할 수 있다.

 

GraphQL에 대해서도 감을 잡기가 어려웠는데 이 책을 통해서 상당 부분 이해할 수 있었다. 책의 간단한 예제를 통해 기본 사용방법들을 익히고나니 현재 진행 중인 사이드 프로젝트에 적용해보고 싶은 마음이 들었고, 현재는 인증 부분부터 하나씩 연동해보고 있다. 이 후 소규모 프로젝트에서는 Amplify를 적극 활용할 것 같다.

댓글