AWS Lambda에서의 "대상 추가"는 Lambda 함수가 다른 AWS 서비스나 특정 자원과 연동하여 특정 작업을 수행하도록 설정하는 것을 의미. Lambda 함수가 수행해야 할 작업을 위해 이벤트를 전달하거나 데이터 처리를 위임할 대상을 추가하는 것
Lambda에서 추가할 수 있는 대상의 예시와 사용 사례
- EventBridge(구 CloudWatch Events):
- 대상 역할: Lambda 함수가 특정 이벤트를 기반으로 실행될 수 있도록, 이벤트 트리거 역할을 하는 EventBridge 규칙을 대상으로 추가
- 사용 사례: 매일 정해진 시간에 작업 수행, 특정 AWS 서비스의 상태 변경(예: EC2 인스턴스 시작/종료 이벤트)에 따라 작업 수행 등이 있습니다.
- S3:
- 대상 역할: S3 버킷에서 특정 객체 이벤트(예: 객체 생성, 삭제)가 발생할 때 Lambda 함수를 트리거하는 역할
- 사용 사례: 새 파일 업로드 시 이미지 변환, 데이터 처리 또는 로그 분석 등의 작업을 수행
- DynamoDB Streams:
- 대상 역할: DynamoDB 테이블의 데이터 변경(예: 항목 추가, 삭제, 수정)이 발생할 때 이 이벤트를 Lambda 함수에 전달
- 사용 사례: 데이터 변경에 따라 데이터 처리를 자동화하거나 데이터 복제, 실시간 알림 등을 구현할 때 사용
- SQS (Simple Queue Service):
- 대상 역할: SQS 대기열에 쌓인 메시지를 Lambda 함수로 전달
- 사용 사례: 비동기 데이터 처리를 위해 대기열에 쌓인 요청을 Lambda로 전달해 데이터를 처리하거나, 대기열에서 작업을 순차적으로 실행할 때 사용
- SNS (Simple Notification Service):
- 대상 역할: SNS 주제에 대한 알림을 Lambda 함수로 전달
- 사용 사례: 특정 이벤트에 대한 알림을 받아 처리하거나, 대규모의 메시지를 다양한 서비스와 함께 처리하는 경우에 사용
- API Gateway:
- 대상 역할: API Gateway에서 수신한 HTTP 요청을 Lambda 함수에 전달하여, 외부 서비스로부터 HTTP 기반의 요청을 처리할 수 있게 한다
- 사용 사례: REST API 또는 웹 애플리케이션의 백엔드 로직을 구현할 때 Lambda 함수를 트리거하여 서버리스 아키텍처를 구성할 때 사용
대상을 추가하는 이유와 상황
Lambda 함수는 다양한 서비스의 이벤트를 처리하거나 데이터를 실시간으로 변환하는 데 주로 사용된다. 각 서비스가 Lambda 함수를 트리거할 수 있는 대상이 되는 이유는 다음과 같다.
- 이벤트 기반 작업 처리: 예를 들어, S3에 이미지가 업로드될 때 해당 이미지를 변환하거나, DynamoDB에서 데이터 변경이 발생할 때 이를 감지해 추가 처리를 자동으로 실행하기 위해 사용
- 비동기 및 대량 처리: SQS나 SNS를 통해 대기열이나 주제에 대한 메시지를 Lambda 함수로 전달하여, 대량의 비동기 작업을 효율적으로 처리
- 외부와의 통신: API Gateway를 통해 Lambda 함수를 HTTP API로 제공하여 외부 서비스나 애플리케이션과 통신
Lambda 함수에 대상을 추가하는 이유는 이벤트에 기반한 트리거 설정, 데이터 처리 및 변환, 외부 통신을 통한 서버리스 아키텍처 구축을 위한 것이며 Lambda와 연동할 대상은 처리할 이벤트의 종류와 작업의 성격에 따라 선택
'AWS' 카테고리의 다른 글
Lambda Java DB 연결 변수 관리 (2) | 2024.11.18 |
---|---|
Endpoint 서비스 범주 (0) | 2024.11.11 |
AWS terraform data 사용법 (0) | 2024.10.25 |
AWS 외부에서 EC2로 HTTPS 연결 설정 IaC (0) | 2024.10.24 |
AWS Lambda 에 HTTPS 인증서 적용하기 (0) | 2024.10.24 |