예약된 동시성과 스로틀링
예약된 동시성(Reserved Concurrency)은 Lambda 함수가 동시에 실행될 수 있는 최대 인스턴스 수를 하드 캡으로 설정합니다. 예약된 동시성을 5로 설정하면, Lambda는 해당 함수를 위해 5개의 슬롯을 항상 확보해 두는 것을 보장합니다. 단, 6번째 동시 요청이 들어오면 즉시 스로틀링(throttling)됩니다.
이 기능은 함수가 데이터베이스처럼 처리할 수 있는 연결 수가 제한된 다운스트림 리소스에 쓰기 작업을 할 때 유용합니다. 예약된 동시성이 없으면 갑작스러운 트래픽 급증 시 수백 개의 Lambda 실행이 동시에 데이터베이스로 몰려 과부하가 발생할 수 있습니다.
단, 트레이드오프가 있습니다. 예약된 슬롯은 계정의 전체 동시성 풀(기본값 1,000)에서 차감됩니다. 한 함수에 예약된 동시성을 100으로 설정하면, 계정 내 다른 모든 함수가 사용할 수 있는 동시성은 900개만 남게 됩니다.
예약된 동시성이 5로 설정된 함수에 6번째 동시 요청이 들어오면 어떻게 될까요?
이 연습은 강의의 일부입니다
