게시된 날짜: Nov 25, 2019

AWS Lambda는 Kinesis 및 DynamoDB 스트림을 처리하기 위한 네 가지 실패 처리 기능(함수 오류 시 이등분, 최대 레코드 연령, 최대 재시도 횟수, 실패 시 대상)을 지원합니다. 이 새로운 기능을 통해 데이터 처리 실패에 대한 응답을 사용자 지정하고 좀 더 복원력이 뛰어난 스트림 처리 애플리케이션을 구축할 수 있습니다.

Lambda는 KinesisDynamoDB 스트림의 데이터 레코드를 배치 단위로 처리합니다. 이전에는 함수가 오류가 반환할 때 Lambda는 영향을 받은 샤드에 있는 데이터의 처리를 중지하고 전체 레코드 배치를 재시도했습니다. 이러한 레코드는 Lambda에서 성공적으로 처리되거나 이벤트 소스에 의해 만료될 때까지 계속 재시도됩니다.

함수 오류 시 이등분
함수 오류 시 이등분 기능을 사용하면 함수가 오류를 반환할 때 Lambda에서 영향을 받는 레코드 배치를 둘로 나눠서 따로 재시도합니다. 따라서 잘못된 데이터 레코드를 배치의 나머지 부분과 쉽게 분리하고 나머지 데이터 레코드를 성공적으로 처리할 수 있습니다.

최대 레코드 연령
Lambda 함수는 60초에서 7일 사이로 구성될 수 있는 최대 레코드 연령에 도달했을 때 데이터 레코드의 처리를 건너뛸 수 있습니다.

최대 재시도 횟수
Lambda 함수는 0에서 10,000 사이로 구성될 수 있는 최대 재시도 횟수에 도달했을 때 레코드 배치를 재시도하는 것을 건너뛸 수 있습니다.  

실패 시 대상
Lambda 함수는 샤드가 오류를 반환할 때도 샤드를 계속해서 처리할 수 있습니다. 데이터 레코드가 최대 재시도 횟수 또는 최대 레코드 연령에 도달할 때 샤드 ID와 스트림 ARN 같은 해당 메타데이터를 SQS 대기열과 SNS 주제의 두 대상 중 하나에 보냄으로써 추가로 조사할 수 있습니다.

AWS Management Console, AWS CLI, AWS CloudFormation 또는 Lambda용 AWS SDK를 통해 이 기능을 시작할 수 있습니다. AWS Lambda를 사용할 수 있는 모든 리전에서 추가 비용 없이 사용할 수 있습니다. AWS Lambda를 사용할 수 있는 리전에 대한 자세한 내용은 AWS 리전 표를 참조하십시오. 자세한 내용은 AWS Lambda 개발자 안내서Amazon Kinesis와 함께 AWS Lambda 사용Amazon DynamoDB와 함께 AWS Lambda 사용을 참조하십시오.