Amazon Simple Storage Service(S3)의 장점
• 2006 AWS 시작시, 가장 범용적인 서비스로 시작
• 무제한 용량의 내구성 높은 객체 스토리지로서 다양한 쓰임새
• 정적 웹호스팅, 이미지/동영상 저장, 로그 저장, VM 이미지 백업 등
단순함 확장성 낮은 비용 신뢰성 빠른 속도
인터넷 스케일 애플리케이션 개발 빌딩 블록
EMAIL MESSAGING
SEARCHAMAZON S3
STORAGE
AWS LAMBDA
FUNCTIONS
AMAZON
DYNAMODB
DATA STORE
ENCODING
AWS Lambda란?
높은 확장성 및
빠른 서비스 연동
서버 필요 없이
코드만 배포
함수 실행 시
100ms 단위 과금
서버 없는, 이벤트 처리 방식의 컴퓨팅 서비스
AWS Lambda = 클라우드 함수 기반 마이크로서비스
AWS Lambda : 동작 원리
Bring your own code
• Node.js, Java, Python
• Java = Scala Clojure 등의
어떠한 JVM기반 언어.
• Bring your own libraries
유연한 호출 경로
• Event 기반 호출 옵션 (여러
AWS 서비스들과 통합)
• REST API 호출 가능 (Amazon
API Gateway와 연동)
단순한 자원 모델
• 128MB부터 1.5GB까지 64MB
단위로 메모리 설정
• 할당된 메모리에 비례하여
CPU 및 네트웍 자원 할당
• 실제 사용량 내역 보고
효과적인 권한 통제
• AWS IAM (Identity and
Access Management) Role을
사용한 실행 권한 설정
• AWS 이벤트 소스에 대한
자원 정책
AWS Lambda를 통한 서버없는 컴퓨팅 서비스
② Amazon S3 파일 업로드
③ AWS Lambda
코드 실행
① 큰 이미지 업로드 ④ 압축 및 크기 변경
⑤ 저장
4. API Gateway를 통한 손쉬운 REST 서비스 만들기
Internet
Mobile
apps
Websites
Services
API
Gateway
AWS Lambda
functions
API Gateway
cache
Endpoints on
Amazon EC2/AWS
Elastic Beanstalk
Any other publicly
accessible
endpoint
Amazon
CloudWatch
monitoring
버전 관리 및 출시 단계별 관리 가능
개발자를 위한 API 키 발급 및 관리 용이
API 접근 인증을 위한 Signature Ver.4 지원
백엔드 보호를 위한 요청 모니터링 및 제한
AWS Lambda 활용
Amazon API Gateway 소개
API Gateway 활용 이점
API 응답을 손쉽게 캐싱해서 제공
Amazon CloudFront를 활용하여 지연 속도 감소 및
DDoS 방어력 향상
iOS, Android 및 JavaScript SDK 자동 제작
Swagger 표준 형식 지원
요청/응답 데이터 변형 가능
결론
AWS Lambda를 통한 서버 관리 없는 클라우드 함수 실행 가능
Amazon API Gateway를 통한 손쉬운 API 관리 가능
AWSLambda + API Gateway + 다른 AWS 관리형 서비스
= Serverless Architecuture 로 진화 가능!