| 실행 위치 | us-east-1 (고정) | 원본 S3와 같은 리전 (예: ap-northeast-2) | 원본 S3와 같은 리전 (예: ap-northeast-2) |
| 트리거 방식 | CloudFront Viewer/Origin 이벤트 | S3 업로드 이벤트 (ObjectCreated) | API Gateway → Lambda (CloudFront 통합) |
| 리사이즈 처리 | 요청 시점에 Sharp 리사이즈 (on-demand) | 업로드 시점에 Sharp로 미리 정의된 사이즈만 리사이즈 (예: 160x160, 1035x1035) | 요청 파라미터(w,h,f,q) 기반 Sharp 리사이즈 (유연) |
| 저장 방식 | 리사이즈본을 S3에 저장하지 않고 CloudFront 캐시에만 유지 → 캐시 만료 시 매번 다시 리사이즈 | 리사이즈본을 S3에 저장 → 이후 요청은 캐시 HIT 또는 S3에서 바로 응답 | 기본은 캐시에만 저장, 필요 시 리사이즈본을 S3에도 저장 가능 → 캐시 만료 후에도 빠른 응답 |
| 유연성 | 코드 수정 필요 (새 옵션 추가 시) | 미리 정의된 사이즈만 가능 (새 사이즈 필요 시 코드 수정) | 파라미터 기반 → 다양한 사이즈/포맷 즉시 지원 |
| 성능 | Cross-region 지연 (us-east-1 ↔ ap-northeast-2) | 업로드 시 미리 처리 → 요청 시 즉시 응답 (빠름) | Regional Lambda 실행 → 네트워크 지연 최소화 |
| 운영/유지보수 | 직접 Lambda 코드 관리 필요 | 사이즈 정의/업데이트 시마다 Lambda 코드 수정 필요 | AWS 공식 관리 솔루션 (CloudFormation, Sharp 포함) |
| 보안 옵션 | 직접 구현 필요 (URL 서명 등) | 직접 구현 필요 | 기본 제공 (Signed URL/Signed Cookie) |