AWS Lambda는 서버리스 컴퓨팅 서비스로서, 사용자가 서버를 프로비저닝하거나 관리할 필요 없이 코드를 실행할 수 있는 플랫폼입니다. 이러한 서비스는 확장성, 유연성 및 비용 절감을 위해 개발자들에게 인기를 누리고 있습니다. 이 글에서는 AWS Lambda의 주요 기능 및 사용법에 대하여 간단히 살펴보도록 하겠습니다.
AWS Lambda 개요
AWS Lambda는 이벤트에 응답하여 자동으로 실행되는 코드 조각입니다. 이러한 코드 조각은 Lambda 함수라고 불리며, 이를 통해 서버리스 애플리케이션 및 백엔드 서비스를 구축할 수 있습니다. Lambda는 수요에 따라 자동으로 확장되므로, 서버를 관리하거나 새로운 인스턴스를 프로비저닝할 필요가 없습니다.
- Programming Model
AWS Lambda는 다양한 프로그래밍 언어를 지원하며, 코드 작성 시 AWS SDK 및 라이브러리를 사용할 수 있습니다. Python, Node.js, Java, Go 등의 언어를 사용하여 Lambda 함수를 작성할 수 있습니다. 또한, 함수에 대한 메타데이터, 리소스 할당량 및 버전 관리도 가능합니다.
- Triggers
Lambda 함수는 다양한 이벤트 소스를 통해 트리거될 수 있습니다. 예를 들어, Amazon S3 버킷에서 객체가 업로드되거나 삭제될 때, Amazon DynamoDB 스트림에서 레코드가 수정될 때, Amazon API Gateway를 통해 HTTP 요청이 발생할 때 등이 있습니다. 이 외에도 AWS 서비스 또는 사용자 정의 이벤트 소스를 통해 트리거할 수 있습니다.
- Integrations
AWS Lambda는 다양한 AWS 서비스와 통합되어 있어, 서비스 간의 작업 흐름을 자동화하거나, 데이터 처리 및 변환 작업을 수행할 수 있습니다. 이러한 통합을 통해, 애플리케이션의 로직을 간결하게 유지하고, 기능을 개선할 수 있습니다.-
- Creating and Deploying Serverless Functions
1) 함수 코드 작성
지원되는 프로그래밍 언어를 사용하여 Lambda 함수 코드를 작성합니다. 이벤트 및 컨텍스트 개체를 매개 변수로 사용하는 처리기 함수를 포함합니다.
2) 패키지 만들기
함수 코드와 해당 종속성을 포함하는 패키지를 만듭니다. 종속성이 있는 함수의 경우 압축된 ZIP 파일 또는 AWS Serverless Application Model(AWS SAM)을 사용하여 패키지를 생성합니다.
3) 기능 구성
실행 역할, 환경 변수, 제한 시간, 메모리 할당 등의 설정을 정의합니다. 이러한 설정은 기능 실행과 관련된 중요한 매개변수를 제어하고 성능 및 비용 최적화에 영향을 미칩니다.
4) 함수 배포
생성된 패키지를 AWS Lambda에 업로드하여 함수를 생성하고 배포합니다. AWS Management Console, AWS CLI, AWS SDK, AWS SAM 또는 AWS CloudFormation과 같은 도구를 이 용도로 사용할 수 있습니다.
5) 이벤트 소스 연결
Lambda 함수를 트리거할 이벤트 소스를 설정합니다. 이벤트 소스에는 API Gateway, S3 버킷 또는 DynamoDB 스트림과 같은 다양한 AWS 서비스가 포함될 수 있습니다. 함수를 트리거하는 방법은 이벤트 소스에 따라 다릅니다.
6) 모니터링 및 기록함수 실행과 관련된 메트릭을 모니터링하고 로그를 검토하여 성능을 분석하고 문제를 해결합니다. AWS Lambda는 Amazon CloudWatch와 통합되어 지표 및 로그 데이터를 제공합니다.
'AWS' 카테고리의 다른 글
brew로 awscli 설치하고 AWS CLI 설정하기 (aws cli 자격 증명) (0) | 2024.02.05 |
---|---|
Amazon RDS 소개 및 주요 기능 (0) | 2023.04.28 |
Amazon S3 및 주요 기능 이해 (0) | 2023.04.07 |
Amazon EC2 소개 및 기능 설명 (0) | 2023.04.07 |
Serverless(serverless.yml) Lambda Layers 배포 및 설정 방법 (0) | 2022.07.29 |