다른 AWS 서비스의 이벤트로 Lambda 간접 호출 - AWS Lambda

다른 AWS 서비스의 이벤트로 Lambda 간접 호출

일부 AWS 서비스는 트리거를 사용하여 직접 Lambda 함수를 간접적으로 호출할 수 있습니다. 이러한 서비스는 Lambda로 이벤트를 푸시하고, 지정된 이벤트가 발생하면 함수가 즉시 간접적으로 호출됩니다. 트리거는 개별 이벤트와 실시간 처리에 적합합니다. Lambda 콘솔을 사용하여 트리거를 생성하면 콘솔은 해당 AWS 서비스와 상호 작용하여 서비스에 대한 이벤트 알림을 구성합니다. 트리거는 실제로 Lambda가 아니라 이벤트를 생성하는 서비스에 의해 저장되고 관리됩니다.

이벤트는 JSON 형식으로 구조화된 데이터입니다. JSON 구조는 JSON 구조를 생성하는 서비스와 이벤트 유형에 따라 다르지만, 모두 함수가 이벤트를 처리하는 데 필요한 데이터를 포함합니다.

함수에는 여러 개의 트리거가 있을 수 있습니다. 각 트리거는 함수를 독립적으로 호출하는 클라이언트 역할을 하며 Lambda가 함수에 전달하는 각 이벤트에는 단일 트리거의 데이터만 있습니다. Lambda는 이벤트 문서를 객체로 변환한 후 함수 핸들러에 전달합니다.

서비스에 따라 이벤트 기반 간접 호출은 동기식 또는 비동기식으로 수행될 수 있습니다.

  • 동기식 호출의 경우 이벤트를 생성하는 서비스는 함수로부터 응답을 기다립니다. 이 서비스는 함수가 응답에 반환되어야 하는 데이터를 정의합니다. 이 서비스는 오류에 대해 재시도할지 여부와 같은 오류 전략을 제어합니다.

  • 비동기 호출의 경우 Lambda는 이벤트를 함수에 전달하기 전에 대기열에 추가합니다. Lambda가 이벤트를 대기열에 넣으면 이벤트를 생성한 서비스에 즉시 성공 응답을 보냅니다. 함수가 이벤트를 처리한 후 Lambda는 이벤트 생성 서비스에 대한 응답을 반환하지 않습니다.

트리거 생성

트리거를 생성하는 가장 쉬운 방법은 Lambda 콘솔을 사용하는 것입니다. 콘솔을 사용하여 트리거를 생성하면 Lambda는 함수의 리소스 기반 정책에 필요한 권한을 자동으로 추가합니다.

Lambda 콘솔을 사용하여 트리거를 생성하려면
  1. Lambda 콘솔의 함수 페이지를 엽니다.

  2. 트리거를 생성할 함수를 선택합니다.

  3. 함수 개요 창에서 트리거 추가를 선택합니다.

  4. 함수를 호출하려는 AWS 서비스를 선택합니다.

  5. 트리거 구성 창의 옵션을 입력하고 추가를 선택합니다. 함수를 호출하기 위해 선택한 AWS 서비스에 따라 트리거 구성 옵션이 달라집니다.

다음 표에는 Lambda 함수를 간접적으로 호출할 수 있는 서비스가 나와 있습니다.

Service 호출 메서드

Amazon Alexa

이벤트 기반, 동기식 호출

Amazon Managed Streaming for Apache Kafka

이벤트 소스 매핑

자체 관리형 Apache Kafka

이벤트 소스 매핑

Amazon API Gateway

이벤트 기반, 동기식 호출

AWS CloudFormation

이벤트 기반, 비동기식 호출

Amazon CloudFront (Lambda@Edge)

이벤트 기반, 동기식 호출

Amazon CloudWatch Logs

이벤트 기반, 비동기식 호출

AWS CodeCommit

이벤트 기반, 비동기식 호출

AWS CodePipeline

이벤트 기반, 비동기식 호출

Amazon Cognito

이벤트 기반, 동기식 호출

AWS Config

이벤트 기반, 비동기식 호출

Amazon Connect

이벤트 기반, 동기식 호출

Amazon DynamoDB

이벤트 소스 매핑

Amazon Elastic File System

특수 통합

Elastic Load Balancing (Application Load Balancer)

이벤트 기반, 동기식 호출

AWS IoT

이벤트 기반, 비동기식 호출

Amazon Kinesis

이벤트 소스 매핑

Amazon Data Firehose

이벤트 기반, 동기식 호출

Amazon Lex

이벤트 기반, 동기식 호출

Amazon MQ

이벤트 소스 매핑

Amazon Simple Email Service

이벤트 기반, 비동기식 호출

Amazon Simple Notification Service

이벤트 기반, 비동기식 호출

Amazon Simple Queue Service

이벤트 소스 매핑

Amazon Simple Storage Service(S3)

이벤트 기반, 비동기식 호출

Amazon Simple Storage Service Batch

이벤트 기반, 동기식 호출

보안 관리자

이벤트 기반, 동기식 호출

Amazon VPC Lattice

이벤트 기반, 동기식 호출

AWS X-Ray

특수 통합