Amplify를 활용한 서버리스 웹 어플리케이션 만들기 영상 정리

Imnottired·2023년 4월 3일
0

프로젝트에서 사용하였는데, 개념 정리 내용도 없이 급하게 진행했던 기억이 남는다.
순전히 내것인가? 라고 말하면 의문점이 든다.
보강하고자 공부하였다.

AWS 서비스

비즈니스 로직은 단순히 구동뿐만 아니라 데이터를 기반으로 다룬다.
대부분의 서비스가 비즈니스 로직과 데이터가 연결되어 있다.

배포가 끝이 아니라 CI/CD가 이루어져야한다.

인터넷이 될때 안될때 혹은 보안이 중요하다 하면 여러 사항들을 고려해야한다.

관리의 영역을 최소한 할 수 있는 것을 제공한다.


그런 사항들에 맞춰서 다양한 것들이 제공 되고 있다.

On-premises

서버를 구성할 때 직접 고민하며 고려해주어야했다.
하드웨어 및 인프라 구축 고려해야함

cloud

AWS 클라우드가 발전하면서 클라우드가 줄 수 있는 민첩성 이런 부분들을 효과적으로
발전하였다.

cloud-Native

cloud가 더발전해서 근래에는 다양한 기술 스펙트럼이 확장
예시로 관리형 서비스, 서버리스 서비스 포함 되어짐

서버리스

서버가 없는 서비스가 아니고 사용할 때 관리 부담을 최소화하는데 주력하는 것
효율성을 고려하기때문에 사용량에 따라 확장함
트래픽이 많이 발생하여도 사용량에 따라 걱정하지 않아도 된다.

사용한 만큼만 요금 발생

기본적으로 서버리스 항시 사용할 수 있는 셀프 힐링이 탑재

서버리스 형태의 서비스들

운영의 부담을 최소화하고 다양한 포트폴리오를 제공하고 있음


AWS Amplify

모바일 및 웹 개발자가 풀스택 어플리케이션을 빠르게 구성하는 방법을 제공
프레임워크에 대해 추가비용 x

Amplify Framework 구성요소

CLI 커멘드 라인 인터페이스
Client Libs (오픈소스) 모바일이나 자바스크립트로 제공

CLI는 Command Line Interface의 약어입니다. 즉, 컴퓨터 프로그램을 실행하거나 다양한 작업을 수행하기 위해 키보드를 사용하여 명령어를 직접 입력하는 인터페이스를 말합니다. CLI는 대개 터미널 창이나 명령 프롬프트와 같은 텍스트 기반 환경에서 작동하며, 대부분의 운영 체제에서 사용할 수 있습니다. CLI는 그래픽 사용자 인터페이스(GUI)와는 다른 방식으로 작동하지만, 일부 프로그래머와 시스템 관리자들은 CLI를 선호합니다.


사용하기 쉽고, 간단한 CLI로 사용가능하며 콘솔로 상태를 알려주고 관리할 수 있다.

Amplify 바닐라나 JS 관련된 프레임워크 지원

AWS 서비스 구성 CLI를 통해 편하게 가능

Amplify CLI


하나하나 다 물어보고 편하게 사용 가능하다

장점


가입 인증 구현을 쉽게 도와주는 역할하는 Cognito
이메일 인증 기능등을 가지고 있다.


Lambda를 통해서 특정 이벤트 제공할 수 있다.

위 기능들을 이용하고 Cognito는 인증을 수행

라이브러리를 통해서 처리할 수 있다.

API

트래픽이 몰렸을 때 어떻게 대처할지?
부하 분산을 어떻게 해줄 것인지 고려해야함

이러한 기능들을 AWS가 도와줌
비즈니스 로직에만 포커싱을 도와준다

API 기술 스택


api 인터페이스에 따라 다르게 작동

두가지 Api로 접근

GraphQL

다행히도 미리 공부해서 이해할 수 있었다.

GraphQL 처리 가능하고 Cognito 와 연동


대규모 처리, 성능 최적화 서버리스 모델


AppSync와 Amazon DynamoDB 연동가능한 Amplify DataStore
디바이스에서 저장되는 오프라인 스토리지까지 제공합니다.
오프라인 환경에서 작업했을 때 온라인으로 되었을 때 자동으로 동기화되도록 로직 가능

Amazon Pinpoint


분석하기 위해 사용한다.

Web Hosting


백엔드 개발자가 아니라도 관리할 수 있게 도와줌

38분까지 봤음
수정중

https://www.youtube.com/watch?v=z1CsCmS8L5E&t=76s

profile
새로운 것을 배우는 것보다 정리하는 것이 중요하다.

0개의 댓글