Lambda@Edge

2023. 5. 3. 23:02study

Lambda@Edge를 사용하면 Node.js 및 Python Lambda 함수를 실행하여 CloudFront가 제공하는 콘텐츠를 사용자 지정하여 AWS 위치의 함수를 최종 사용자와 더 가깝게 실행할 수 있습니다. 이 함수는 서버 프로비저닝 또는 관리 없이 CloudFront 이벤트에 응답하여 실행됩니다. Lambda 함수를 사용하여 CloudFront 요청 및 응답을 다음과 같이 변경할 수 있습니다.

 

- CloudFront가 최종 사용자의 요청을 수신한 후(최종 사용자 요청)

- CloudFront가 오리진에 요청을 전달하기 전(오리진 요청)

- CloudFront가 오리진으로부터 응답을 수신한 후(오리진 응답)

- CloudFront가 최종 사용자에게 응답을 전달하기 전(최종 사용자 응답)

 

Lambda@Edge 함수를 오리진 그룹에 설정한 CloudFront 배포와 함께 사용할 수 있습니다. Lambda 함수를 사용하려면, 캐시 동작을 생성할 때 오리진 그룹에 대한 오리진 요청 또는 오리진 응답 트리거에 이 함수를 지정합니다. 오리진 그룹과 함께 Lambda@Edge 함수를 사용하는 경우, 단일 최종 사용자 요청에 대해 함수를 두 번 트리거할 수 있습니다. 예를 들어 다음 시나리오를 고려해 보십시오.

 

- 오리진 요청 트리거를 사용하여 Lambda@Edge 함수를 생성합니다.

- Lambda 함수는 CloudFront가 (캐시 누락 시) 기본 오리진에 요청을 보낼 때 한 번 트리거됩니다.

- 기본 오리진은 장애 조치를 위해 구성된 HTTP 상태 코드로 응답합니다.

- Lambda 함수는 CloudFront가 보조 오리진에 동일한 요청을 보낼 때 다시 트리거됩니다.

 

이 시나리오에서 Lambda@Edge를 사용하여 Lambda 함수가 CloudFront에서 제공하는 콘텐츠를 사용자 지정하고 사용자에게 더 가까운 AWS 위치에서 인증 프로세스를 실행하도록 할 수 있습니다. 또한 하나는 기본 오리진으로, 다른 하나는 두 번째 오리진으로 기본 오리진이 실패할 때 CloudFront가 자동으로 전환하는 두 개의 오리진으로 오리진 그룹을 생성하여 오리진 장애 조치를 설정할 수 있습니다. 이렇게 하면 사용자에게 발생하는 간헐적인 HTTP 504 오류가 완화됩니다.

'study' 카테고리의 다른 글

gateway Endpoint vs Interface Endpoint  (0) 2023.05.11
AWS Config VS Control tower  (0) 2023.05.11
Amazon Kinesis Data Streams  (0) 2023.05.02
AWS Solution Architect 오답노트  (0) 2023.05.02
AWS blog Summary 1 - 탄소  (0) 2023.04.01