Lambda@Edge

사용자를 위한 서버리스 구현

맞춤형 콘텐츠 전송과 오리진 서버의 부하 감소

AWS 클라우드
Lambda@Edge 사용해 보기

Lambda@Edge의 경우 손쉽게 전 세계 AWS 로케이션에서 코드를 실행할 수 있으므로 가장 짧은 지연 시간으로 최종 사용자에게 응답할 수 있습니다. 코드는 오리진 서버와 최종 사용자의 콘텐츠 요청 또는 오리진 서버와 최종 사용자에 대한 콘텐츠 요청과 같은 Amazon CloudFront 이벤트에 의해 트리거될 수 있습니다. AWS Lambda에 Node.js 코드를 업로드하기만 하면 Lambda가 최종 사용자와 가까운 AWS 로케이션에서 뛰어난 가용성으로 코드를 복제하거나, 라우팅하거나, 확장하는 데 필요한 모든 작업을 처리합니다. 사용한 컴퓨팅 시간만큼만 비용을 지불하면 되고, 코드가 실행되지 않을 때는 요금이 부과되지 않습니다.

Lambda@Edge 동영상
46:47
Lambda@Edge 개요 및 데모
Lambda@Edge 딥 다이브

글로벌

Lambda@Edge는 코드를 최종 사용자와 가까운 AWS 로케이션에서 실행하므로, 좀 더 짧은 지연 시간으로 좀 더 풍부하고 좀 더 개인화된 콘텐츠를 최종 사용자에게 손쉽게 제공할 수 있습니다.

지속적인 조정

Lambda@Edge는 Amazon CloudFront 이벤트의 각 트리거에 대한 응답으로 코드를 실행하여 자동으로 애플리케이션을 확장/축소합니다. 코드는 병렬로 실행되고 각 트리거는 개별적으로 처리되어 정확히 워크로드 규모에 맞게 조정됩니다.

오리진 로드 감소

Lambda@Edge는 여러 로케이션에 걸쳐 서버를 프로비저닝하거나 관리할 필요 없이 코드를 자동으로 실행합니다. Node.js 코드를 작성하고 이를 AWS Lambda로 업로드하기만 하면, 해당 코드가 최종 사용자와 가까운 AWS 로케이션에서 실행됩니다.

밀리초 단위로 측정

Lambda@Edge의 경우 코드가 실행되는 시간(50밀리초 단위) 및 코드가 트리거되는 횟수를 기준으로 요금이 부과됩니다. 코드가 실행되지 않을 때는 요금이 부과되지 않습니다.


고도로 개인화된 웹 사이트

Lambda@Edge를 사용하면 웹 사이트(예: 뉴스, 날씨, 스포츠 사이트)에 고유한 콘텐츠 전송 기능을 추가할 수 있습니다. 최종 사용자의 위치와 웹 사이트에 액세스할 때 사용하는 디바이스 유형에 따라 고유한 콘텐츠를 제공할 수 있습니다. 사용자 정의 디바이스 탐지/그룹화 기능을 사용하면 사용자 에이전트에 따라 웹 사이트에 액세스하는 최종 사용자에게 서로 다른 객체를 전송할 수 있습니다.

최종 사용자 요청에 대한 응답 생성

전 세계 AWS 로케이션에 수신되는 최종 사용자 요청에 대해 HTTP 응답을 생성할 수 있습니다. 예를 들어 인증받지 않은 사용자를 온디맨드로 생성한 로그인 페이지로 리디렉션할 수 있습니다. 또한, 사용자 정의 오류 페이지 또는 정적 웹 페이지를 최종 사용자와 가장 가까운 AWS 로케이션에서 직접 생성할 수 있습니다.

URL 재작성

전달하기 전에 오리진 디렉터리 구조에 맞게 최종 사용자가 보는 URL을 재작성할 수 있습니다. 이렇게 하면 팀 구조를 노출하거나 콘텐츠를 내부에서 어떻게 관리하는지 노출하지 않고 최종 사용자를 위한 원활한 환경을 구축할 수 있습니다.

엣지에서 액세스 제어

사용자가 처음 인증을 받고 나면 개발자는 HTTP 쿠키를 활용하여 콘텐츠에 대한 액세스를 제어하도록 Lambda 함수를 작성할 수 있으므로 이후의 요청을 엣지에서 인증할 수 있습니다.

원격 네트워크 호출

Lambda@Edge의 경우, 인터넷을 통해 다른 서비스를 호출하여 추가 리소스에 액세스함으로써 콘텐츠를 조정하거나 최종 사용자 및 오리진 이벤트에 대한 의사 결정을 할 수 있습니다.

A/B 테스트

Lambda@Edge를 사용하면 웹 사이트 URL을 변경하거나 리디렉션하지 않고도 실제 최종 사용자를 통해 여러 버전의 홈페이지(예: 전자 상거래 사이트)를 테스트할 수 있습니다.

콘텐츠 기반 동적 오리진 선택

최종 사용자 위치, 최종 사용자 디바이스 유형, HTTP 헤더, URL 경로, 쿼리 문자열 또는 쿠키에 따라 요청을 서로 다른 백엔드 오리진 서버로 동적으로 라우팅할 수 있습니다. 예를 들어 여러 오리진이 지리적으로 분산되어 설정된 경우, 엣지 로케이션의 lambda 함수가 요청 속성(쿠키, 헤더 등)을 검사하여 최종 사용자와의 거리, 데이터 로컬리티, 사용자 세션 정보, A/B 테스트 처리 등을 바탕으로 가장 최적의 오리진으로 최종 사용자를 라우팅할 수 있습니다.


AWS 계정에 가입

AWS 계정 가입

 

                          설명서를 통해 배우기                                                

Lambda@Edge 사용해 보기
AWS를 사용하여 구축 시작

AWS를 사용하여 구축 시작