자격증/AWS SAA

[AWS SAA] Lambda

14ben 2024. 2. 5. 15:57
728x90

AWS Lambda

  • Serverless Service
    서버 구축, 프로비져닝, 패키지 설치 등의 과정 없이 코드 실행 가능.

  • 코드 실행 서비스
    사용자가 애플리케이션 또는 백엔드 서비스 관리 없이 코드 실행 가능.

  • 트리거 기반 실행
    CloudWatch, ALB, DynamoDB 등을 트리거로 사용하여 특정 상황에 코드 실행 가능.

  • API Gateway와 조합 
    요청에 따라 특정 코드 실행 가능.

  • 실행 시간 제한 
    최대 15분 실행 시간 제한.

  • 지원 언어 
    Javascript의 Node.js, Python, Java, C#(.Net Core), Golang, C#/Powershell, Ruby.

Lambda Function 정의 및 구성

  • Function
    이벤트를 처리하는 코드, 계층, 트리거, 전달 대상으로 구성.

  • 함수코드
    실제 실행되는 코드, Runtime, IAM, VPC, Memory 등으로 구성.

  • 트리거
    함수코드를 발동시키는 서비스 (예: S3, SNS, SQS).

  • 전달대상
    함수 비동기 호출 시 또는 레코드 처리 후 전달될 대상 (예: SNS, SQS).

  • 활용 예시 
    SNS 메시지 수신 후 코드 처리 및 SQS로 전송.

Lambda와 연동되는 AWS 서비스

  • API Gateway: REST API 생성 및 Lambda 함수 호출.
  • Kinesis: Lambda를 이용한 데이터 변환.
  • DynamoDB: 트리거 생성 및 데이터베이스 문제 시 Lambda 함수 작동.
  • S3: 파일 생성 시 Lambda 함수 작동.
  • CloudFront: 콘텐츠 전역 배포 지원.
  • CloudWatch Event/Event Bridge: 인프라 문제 대응을 위한 자동화 실행.
  • CloudWatch Logs: 로그 스트리밍.
  • SNS: 알림과 SNS 토픽에 대처.
  • SQS: 대기열 메시지 처리.
  • Cognito: 로그인 응답.

Lambda 제한사항

  • 실행 한도: 메모리 128MB~10GB, 실행 시간 최대 900초, 환경변수 최대 4KB, 임시폴더 최대 512MB.
  • 배포 한도: 압축 시 최대 크기 50MB, 압축 전 최대 크기 250MB.
  • Lambda@Edge: Edge Location을 통한 서버리스 콘텐츠 전역 배포.

Lambda 네트워킹

  • VPC 외부 시작 권장
    VPC Private Subnet에서 시작 권장, RDS DB, ElastiCache, 내부 Load Balancer 비공개 연결 접근 가능.

 

EC2 vs Lambda

  • EC2: 사용자가 프로비져닝, 운영 체제, 네트워크 및 보안 설정을 직접 관리.
  • Lambda: 프로비져닝 필요 없으며, AWS가 모니터링, 패치 적용, 코드 배포 등을 관리.

 

 
728x90

'자격증 > AWS SAA' 카테고리의 다른 글

[AWS SAA] API Gateway  (1) 2024.02.05
[AWS SAA] Snow Family  (0) 2024.02.05
[AWS SAA] EKS & ECS  (0) 2024.02.05
[AWS SAA] ElastiCache  (0) 2024.02.05
[AWS SAA] Route 53  (0) 2024.02.05