AWS API Gateway 없이 Lambda URL로 API Server 만들기
<1> AWS 컴퓨팅 서비스 3종류
<2> EC2
<3> 람다
<1> AWS 컴퓨팅 서비스 3종류
1
EC2
2
ECS, EKS, 파 게이트
컨테이너와 aws관리 서버
3
람다 - 서버리스 서비스
소프트웨어 코드만 제공되면 언제나 실행되는 서비스
<2> EC2
1
Linux , windows , MAC 지원한다.
2
다양한 구매 옵션 : 온디멘드 RI, Savins plan , Spot
3
AMI (Amazon Machine Inagme)?
OS, 애플리케이션 등 정보가 있다.
애플리케이션이 설치된 커스텀 AMI를 이용해 동일한 서버를 만들어 낼 수 있다.
4
리부팅도 running상태이다.
5
인스턴스 유형?
https://aws.amazon.com/ko/ec2/instance-types/
6
최적의 인스턴스 및 크기 선택?
Cost Explorer - 지난 14일간의 최대 CPU 및 메모리 사용기록 기반, 적정 크기 권장, 동일한 패밀리 내에서 권장
AWS Compute Optimizer - 최적의 AWS 리소스를 머신러닝 기반 서비스 , 최적의 EC2 인스턴스 , EBS Volume 및 람다 권장
7
구매 옵션?
온디맨드 - 초단위
예약 인스턴스 (RI) - 1년 , 3년 약정 할인
세이빙 플랜 - 유연한 인스턴스 변경
스폿 인스턴스 - 최대 90% 할인
8
같이 쓰는 서비스?
로드밸런서
ALB - http, https
NLB - tcp , udp
GWLB - 방화벽 , 침입탐지 시스템 확장
Classic LB - 이전 세대 로드밸런서 , 사용하지 않도록 함.
9
User Data?
최초 시작 시 1번 실행됨.
쉘 스크립트 방식 많이 사용함.
<3> 람다
1
코드만 있으면 실행 서버와 상관없이 동작함.
자바, 고, 노드, 파이썬, 루비 등 지원함.
2
특정 이벤트가 발생할 때 람다가 동작한다.
이벤트 소스 ---------------- 람다 동작 -------------- 서비스
데이터 상태 변화
리소스 상태 변화
3
실행 모델 3가지는?
동기 처리? API Gateway 처리
비동기 처리? SNS , S3 이벤트 처리
스트림 처리? 다이나모 디비, 키네시스 처리
4
Cold Start?
람다를 최초 호출할 때 콜드 스타트라고 한다.
이벤트 발생 -- 인보크 발생 ----- 프런트엔드 -------워커 매니저--- 플레이스 먼트 -------- 워커를 할당한다.
5
Warm Start?
이벤트 발생 -- 인보크 발생 - 기존에 워커가 있어 기존 워커 사용
6
람다 사용 케이스?
웹 app
백엔드
데이터 프로세싱
IT 자동화 도구
7
람다 URL 기능?
람다도 직접 호출 가능한 URL을 가질 수 있다.
https://<url-id>/lambda-url.<region>/on.aws/
8
변경 전?
이벤트-----------API Gateway ------람다 처리
변경 후?
이벤트------------람다 처리
9
람다가 제공하는 엔드포인트를 직접 호출? Function URL
브라우저로 호출 가능
Curl로 호출 가능
Postman으로 호출 가능
HTTP methods로 전달 가능 - PUT, GET, POST 등
다음 과정
https://brunch.co.kr/@topasvga/2687
https://brunch.co.kr/@topasvga/2678
감사합니다.