게시된 날짜: Jul 13, 2023

이제 AWS Lambda는 Lambda 함수에서 재귀 루프를 탐지하고 중지할 수 있습니다. 고객은 Lambda 함수를 사용하여 Amazon SQS 및 Amazon SNS와 같은 소스의 이벤트를 처리하는 이벤트 기반 애플리케이션을 구축합니다. 그러나 일부 시나리오에서는 처리된 이벤트가 리소스 구성 오류 또는 코드 결함으로 인해 Lambda 함수를 간접 호출한 동일한 서비스 또는 리소스로 다시 전송될 수 있습니다. 이로 인해 의도하지 않은 재귀 루프가 발생하여 예기치 않은 사용량 및 비용이 고객에게 부과될 수 있습니다. 이번 출시로 Lambda는 16번의 재귀 호출 이후 Amazon SQS, AWS Lambda 및 Amazon SNS 간 재귀 간접 호출을 중지합니다.

함수가 지원되는 AWS SDK 버전 이상을 사용하여 Amazon SQS 또는 Amazon SNS에 이벤트를 전송하면 Lambda는 해당 이벤트를 기준으로 함수가 간접적으로 호출된 횟수를 추적합니다. 함수가 동일한 트리거 이벤트에 의해 16회 이상 간접 호출되면 Lambda는 다음 간접 호출을 중지하고 이벤트를 DLQ(Dead Letter Queue)나 장애 발생 시 대상(구성된 경우)으로 보냅니다. 또한 고객은 문제 해결 단계가 포함된 AWS Health Dashboard 알림을 받게 됩니다.

이 기능은 기본적으로 켜져 있으며 아시아 태평양(홍콩, 자카르타, 오사카, 뭄바이, 서울, 싱가포르, 시드니, 도쿄), 아프리카(케이프타운), 캐나다(중부), 유럽(프랑크푸르트, 아일랜드, 런던, 밀라노, 파리, 스톡홀름), 남아메리카(상파울루), 미국 동부(오하이오, 버지니아 북부), 미국 서부(오레곤, 캘리포니아 북부) AWS 리전에서 사용할 수 있습니다. AWS 계정에서 이 기능을 끄려면 AWS Support에 문의하세요. 자세한 내용은 설명서 또는 출시 블로그 게시물을 참조하세요.