일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- JPQL
- 데코레이터
- 유니크제약조건
- dfs
- 스프링 폼
- 연관관계
- 이진탐색
- shared lock
- exclusive lock
- eager
- 즉시로딩
- BOJ
- SQL프로그래밍
- 동적sql
- 연결리스트
- execute
- 일대다
- 다대일
- 비관적락
- fetch
- 힙
- PS
- 낙관적락
- FetchType
- 지연로딩
- 스토어드 프로시저
- CHECK OPTION
- querydsl
- 백트래킹
- 다대다
- Today
- Total
흰 스타렉스에서 내가 내리지
AWS Lambda 기초 본문
> Serverless
- 서버의 관리와 프로비전 없이 코드를 실행할 수 있음
- 사용한 만큼만 비용을 지불 (OnDemand)
- 고가용성과 장애 내구성이 확보되어 있음
- 빠르게 배포하고 업데이트 가능
- Serverless 환경을 잘 활용할 수 있는 아키텍처 필요
- 병렬 처리
- 이벤트 기반 아키텍처 등
> AWS Lambda
"AWS Lambda는 서버를 프로비저닝 또는 관리하지 않고도 실제로 모든 유형의 애플리케이션 또는 백엔드 서비스에 대한 코드를 실행할 수 있는 이벤트 중심의 서버리스 컴퓨팅 서비스이다. 200개가 넘는 AWS 서비스와 서비스형 소프트웨어 (SaaS) 애플리케이션에서 Lambda를 트리거할 수 있으며 사용한 만큼만 지불하면 됩니다."
- AWS의 Serverless 컴퓨팅 서비스
- 코드와 코드를 실행하기 위한 파일들을 업로드하면 서버 프로비전 없이 코드 실행
- 다양한 AWS 서비스에서 Lambda를 활용
- 다양한 언어 지원
- Java, C#, Go, Node.Js, Python, Ruby, .NET
- Lambda는 크게 두 가지 방법으로 호출
- Event 기반
- AWS의 다른 서비스 혹은 어플리케이션에서 직접 혹은 API Gateway를 통해서 호출
- 저렴한 가격
- 처음 100만건 호출 무료, 이후 100만건 당 $0.2
> Deployment Package
- 함수의 코드와 코드를 실행하기 위한 런타임으로 구성
- 용량 제한
- zip 파일 : 50mb
- unzip 파일 : 250mb
- 콘솔 에디터를 사용하려면 3mb
- S3에 업로드 가능
- 컨테이너 이미지, Lambda Layer 등으로 우회 가능
> 일반 구성 (General Configuration)
- IAM 역할
- 메모리
- 128 ~ 10,240MB (약 10GB)
- 제한 시간
- 최대 15분
- /tmp 디렉토리 스토리지
- 512mb ~ 10,240mb (약 10GB)
> 트리거 (Trigger)
- AWS를 호출하는 서비스
- 예 : API Gateway, SQS, S3
- 각 서비스에서 호출 시 지정된 양식의 이벤트 내용을 전달
> 기타
- 권한 (Permissions)
- IAM 역할로 부여된 AWS의 서비스를 사용할 수 있는 권한
- 태그
- Lambda에 부여된 태그
- 환경 변수 (Environment Variables)
- Lambda 코드상에서 사용하는 환경 변수
> 테스트 이벤트
- 람다 함수를 테스트하기 위한 내용을 템플릿으로 구성 가능
- 프라이빗
- 함수 생성자만 작성 가능 (총 10개)
- 공유 가능
- 같은 계정의 다른 IAM 사용자에게 공유 가능
- 다양한 서비스에서 Lambda 호출 시 전달하는 이벤트가 미리 지정되어 있음
> Demo - 덧셈 하는 Lambda 생성
- 두 숫자를 더하는 함수 생성
함수 생성까지 시간이 좀 걸리는 데, 이는 기본 역할을 만들고 있기 때문이다. (최대 1분)
테스트 이벤트를 만들어 보자.
"템플릿 - 선택 사항"으로 다양한 이벤트를 선택할 수 있다.
커스텀으로 정말 간단한 걸 만들어 보자.
body 부분에 event를 넣어보자 .
우리가 테스트 탭에서 이벤트 JSON에 작성한 내용이 handler 함수의 전달인자로 전달이 된 것을 알 수 있다.
모든 숫자를 더하는 로직을 한 번 작성해보자.
이벤트 JSON은 여러 개를 동시에 만들어 놓을 수 있다.
'AWS' 카테고리의 다른 글
Serverless - JWT (0) | 2023.09.21 |
---|---|
Amazon API Gateway 기초 (0) | 2023.09.21 |
Amazon EventBridge - 이벤트 매칭 규칙 (0) | 2023.09.20 |
Serverless 서비스 기반 지진 알람 (0) | 2023.09.20 |
Serverless Framework (0) | 2023.09.20 |