S3 Object Lambda를 이용한 On-Demand 이미지 변환 서비스 소개

S3 Object Lambda를 이용한 On-Demand 이미지 변환 서비스 소개

1
AI 요약

이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.

S3 Object Lambda를 활용한 On-Demand 이미지 변환 서비스

이 게시물은 AWS S3 Object Lambda를 이용해 On-Demand 이미지 변환 서비스를 구축한 사례를 소개합니다.

기존 이미지 변환 방식의 한계

  • 미리 변환된 여러 크기의 이미지를 저장해야 하므로 스토리지 비용 증가
  • 비동기 처리로 인해 변환 상태 추적과 애플리케이션 복잡도 증가

On-Demand 이미지 변환 서비스의 특징

  • 이미지 요청 시점에 변환을 수행하여 스토리지 비용 절감
  • 변환된 이미지를 CDN에 캐싱하여 성능 향상

아키텍처 비교 및 선택 이유

  • Lambda@Edge, API Gateway + Lambda, Lambda Function URL, S3 Object Lambda 중 S3 Object Lambda가 비용과 보안 측면에서 우수
  • 무신사는 S3 Object Lambda를 선택해 비용 최적화와 보안성을 확보

구현 및 운영

  • S3 Access Point와 Object Lambda Access Point, CloudFront OAC 설정
  • Lambda에서 node-sharp를 사용한 이미지 변환 구현
  • Datadog으로 모니터링, Serverless Framework와 GitHub Actions를 통한 CI/CD 구축

성과

원본 대비 95%, 기존 대비 50% 이상의 이미지 압축률 달성으로 CloudFront 데이터 전송 및 S3 저장 비용 절감과 클라이언트 성능 개선에 기여함을 확인함.