Lambda 함수 호출 - AWS Lambda

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Lambda 함수 호출

Lambda 콘솔, 함수 URL HTTP(S) 엔드포인트, Lambda API, AWS SDK, AWS Command Line Interface(AWS CLI), AWS 도구 키트를 사용하여 Lambda 함수를 직접 호출할 수 있습니다. 또한 이벤트, 외부 요청 또는 일정에 따라 함수를 호출하도록 다른 AWS 서비스를 구성할 수도 있습니다. 예를 들어 S3 버킷에 객체가 생성될 때 Amazon Simple Storage Service(S3)가 함수를 호출하거나, Amazon EventBridge(CloudWatch Events)가 일정에 따라 함수를 호출할 수 있습니다. 또한 Lambda가 스트림 또는 대기열에서 항목을 읽고 해당 항목을 처리할 함수를 호출하도록 구성할 수도 있습니다.

함수를 호출할 때 동기식으로 호출할 것인지 비동기식으로 호출할 것인지 선택할 수 있습니다. 동기식 호출의 경우 함수가 이벤트를 처리하여 응답을 반환하기를 기다립니다. 비동기식 호출의 경우, Lambda는 처리를 위해 이벤트를 대기열에 저장하고 즉시 응답을 반환합니다. 비동기식 호출의 경우 Lambda는 재시도를 처리하고, 호출 레코드를 대상에 보낼 수 있습니다.

다른 AWS 서비스로부터 Lambda 함수 호출

다른 AWS 서비스가 함수를 직접 호출하려면 트리거를 생성해야 합니다. 트리거는 특정 이벤트 또는 조건이 발생할 때 다른 AWS 서비스가 함수를 호출할 수 있도록 하기 위해 구성하는 리소스입니다. 함수는 여러 개의 트리거를 가질 수 있습니다. 각 트리거는 함수를 독립적으로 호출하는 클라이언트 역할을 하며 Lambda가 함수에 전달하는 각 이벤트에는 단일 트리거의 데이터만 있습니다.

Lambda 콘솔을 사용하여 함수의 트리거를 생성할 수 있습니다. AWS Serverless Application Model(AWS SAM)의 Events 속성을 사용하여 다른 서비스가 함수를 호출하도록 구성할 수도 있습니다. 자세한 내용은 AWS Serverless Application Model 개발자 안내서AWS::Serverless::Function을 참조하세요.

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

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

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

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

  5. 트리거 구성 창의 옵션을 입력하고 추가를 선택합니다.

    함수를 호출하기 위해 선택한 AWS 서비스에 따라 트리거 구성 옵션이 달라집니다.

트리거를 사용하여 Lambda 함수를 호출할 수 있는 전체 AWS 서비스 목록과 다양한 서비스의 트리거 구성에 대한 자세한 내용은 다른 서비스와 함께 Lambda 사용을 참조하세요.

스트림 또는 대기열에서 Lambda 함수 호출

Amazon Kinesis 스트림 또는 Amazon Simple Queue Service(Amazon SQS) 대기열 같은 스트림이나 대기열의 항목을 Lambda 함수가 처리하게 하려면, 이벤트 소스 매핑을 생성해야 합니다. 이벤트 소스 매핑은 스트림 또는 대기열에서 항목을 읽고 Lambda 함수로 전송할 항목의 배치가 포함된 이벤트를 생성하는 Lambda의 리소스입니다. 함수가 처리하는 각 이벤트에는 수백 또는 수천 개의 항목이 포함될 수 있습니다.

Lambda 콘솔, AWS CLI, Lambda API 또는 AWS SDK를 사용하여 Lambda 함수의 이벤트 소스 매핑을 생성할 수 있습니다. AWS SAM 또는 AWS CloudFormation을 사용하여 이벤트 소스 매핑을 추가할 수도 있습니다. Lambda 콘솔에서 이벤트 소스 매핑을 생성하려면 지침에 따라 다른 AWS 서비스로부터 Lambda 함수 호출에서 트리거를 생성하고 이벤트 소스 매핑을 지원하는 AWS 서비스 중 하나를 소스로 선택합니다.

AWS CLI, Lambda API 또는 AWS SDK를 사용하여 이벤트 소스 매핑을 생성하고 이벤트 소스 매핑을 사용할 수 있는 AWS 서비스 목록을 보려면 Lambda 이벤트 소스 매핑 섹션을 참조하세요. AWS SAM에서 Events 속성을 사용하여 이벤트 소스 매핑을 생성하는 것에 대한 자세한 내용은 AWS Serverless Application Model 개발자 안내서AWS::Serverless::Function을 참조하세요.

오류 및 재시도

함수를 어떤 방식으로 호출하는지에 따라 조정 동작과 발생할 수 있는 오류 유형이 달라집니다. 함수를 동기식으로 호출하는 경우 응답에서 오류를 수신하고 재시도할 수 있습니다. 비동기식으로 호출하거나, 이벤트 소스 매핑을 사용하거나, 다른 서비스가 함수를 호출하도록 구성할 때, 재시도 요구 사항과 다수의 이벤트를 처리하도록 함수를 조정하는 방식은 각각 다릅니다. 자세한 내용은 AWS Lambda의 오류 처리 및 자동 재시도 단원을 참조하십시오.