본문 바로가기

직접 만든 소프트웨어, 두 가지 개발 기록

구현 구조와 적용 범위, 확인한 기능과 남은 한계를 함께 기록합니다.

소프트웨어개발

CloudFront Functions와 Lambda@Edge 선택: 네트워크·본문·실행 시점 확인

by 아빠띠띠뽀 2026. 10. 21.

요청 경로 변경과 외부 서버 연결을 나타낸 엣지 함수 개념 그림
직접 생성한 개념 이미지입니다. 실제 서비스 화면이나 구축·성능 시험 결과가 아닙니다.

짧은 URL 변경이나 헤더 정리는 CloudFront Functions부터 검토합니다. 외부 네트워크 조회, 요청 본문 접근, 원본 요청·응답 이벤트가 필요하면 Lambda@Edge의 지원 범위를 확인하세요. 요청마다 실행할 코드와 캐시를 놓쳤을 때 실행할 코드를 먼저 구분해야 합니다.

혼동의 원인: 엣지에서 실행한다는 말만 보고 고른다

두 기능 모두 CloudFront 요청 흐름에 코드를 연결하지만 같은 실행 환경은 아닙니다. URL 하나를 바꾸는 작업과 외부 권한 서버의 응답을 기다리는 작업은 필요한 자원이 다릅니다. 먼저 입력 정보, 호출 대상, 실행 시점을 한 줄씩 적어 보세요.

필요 동작 검토 후보 주의
짧은 URL·헤더 변경 Functions 런타임 제한
외부 네트워크 조회 Lambda@Edge 지연·실패 처리
요청 본문 사용 Lambda@Edge 본문 접근 제한
원본 이벤트 처리 Lambda@Edge 캐시 적중과 구분

1. 함수에 필요한 입력을 확인한다

요청 경로와 헤더만으로 답을 정할 수 있다면 가벼운 함수가 후보입니다. CloudFront Functions는 임의의 네트워크 호출과 요청 본문 접근을 지원하지 않습니다. KeyValueStore 지원은 외부 API를 자유롭게 호출할 수 있다는 뜻이 아니며 해당 런타임과 데이터 갱신 설계를 별도로 확인합니다.

외부 서비스 조회가 꼭 필요하면 Lambda@Edge의 현재 제한과 호출 대상의 장애 처리 방법을 검토합니다. 모든 방문 요청에서 외부 응답을 기다리는 설계는 지연과 장애 범위를 늘릴 수 있으므로 필요한 정보만 사용하는지 먼저 검토하세요.

2. 실행 시점과 캐시를 함께 그린다

Functions는 viewer request와 viewer response를, Lambda@Edge는 이들 외에 origin request와 origin response 이벤트도 지원합니다. 사용자 요청 단계와 원본으로 향하는 단계는 같은 시점이 아닙니다. 캐시 적중 여부에 따라 원본 관련 코드가 실행되는지 달라질 수 있습니다.

인증이 필요한 요청이라면 캐시 적중 때도 권한 검사가 필요한지 명시합니다. 한 사용자를 위한 응답이 다른 사용자에게 재사용되지 않도록 캐시 키와 응답 정책을 함께 검토해야 합니다. 함수 이름만 바꾸거나 코드를 복사하는 방식으로 보안 동작이 같다고 가정하지 않습니다.

3. 배포 전 확인할 결과

승인된 시험 배포에서 정상 경로, 존재하지 않는 경로, 쿼리 문자열 포함 요청, 캐시 적중과 실패를 구분합니다. 변경된 경로가 기대한 원본 파일을 가리키는지, 반복 리다이렉트가 없는지, 필요한 헤더가 유지되는지 확인하세요. 권한 검사가 있다면 허용과 거절 결과를 모두 시험합니다.

원본 URI를 바꾸는 것만으로 캐시 동작이나 원본 선택이 자동으로 바뀐다고 기대하지 마세요. 공통 제한 문서에서 URI 변경과 캐시 동작의 관계를 확인합니다. 롤백은 이전 함수 버전과 연결 설정을 보존한 상태에서 계획합니다.

비용과 운영 주의

함수 호출 수, Lambda@Edge 실행 자원, 관련 조회 비용과 로그 운영 부담을 같은 요청량으로 비교하세요. 이 글에는 최신 단가나 절감률을 넣지 않았습니다. 공식 요금과 리전·런타임 지원은 실제 도입 시 다시 확인해야 합니다.

FAQ

가벼운 URL 변경에도 Lambda@Edge가 필수인가요? Functions에서 필요한 동작을 지원하는지 먼저 확인합니다.

Functions에서 외부 로그인 API를 호출할 수 있나요? 일반 네트워크 호출은 지원하지 않으므로 다른 구조를 검토해야 합니다.

이 글이 배포 성공 증거인가요? 공식 문서 기반 선택 안내이며 실제 배포 시험은 수행하지 않았습니다.

공식 출처와 관련 글

자료 확인일: 2026년 10월 19일. 공식 문서 기반 설명이며 실제 서비스·명령 실행 시험은 수행하지 않았습니다. 설치 버전과 리전·지원 범위는 적용 전에 확인하세요.

엣지 함수 선택 비교

공통 엣지 함수 제한

관련 글: CloudFront와 Cloudflare CDN 선택 기준

적용 전 원본 설정을 보존하고 승인된 시험 범위에서 결과를 확인하세요.