brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Sep 04. 2022

16탄-6. AWS API Gateway 없이

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




감사합니다.




매거진의 이전글 16탄-5. AWS VPC와 외부 네트워크 연결

작품 선택

키워드 선택 0 / 3 0

댓글여부

afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari