AWS

[Lambda] Lambda와 S3를 사용한 이미지 리사이징 (4)- 이미지 리사이징 구현 테스트

J_Dev 2024. 11. 5. 13:44

서론

  • 이번 포스트에서는 준비한 Lambda와 S3 버킷을 활용하여 Spring Boot로 이미지를 업로드하고, CloudFront URL을 생성하여 이미지를 다운로드하는 테스트 과정을 포스팅 했습니다.

1. 업로드할 이미지 준비

  • 테스트 이미지로 600x800 픽셀 크기의 생성형 AI 이미지를 준비하여 사용했습니다.


2. 이미지 업로드 및 결과

1) Spring Boot 로그 확인

  • 이미지가 정상적으로 업로드되었음을 Spring Boot 로그에서 확인할 수 있었습니다.

2) DB 저장 확인

  • S3에 업로드된 이미지의 이름이 DB에 정확히 저장된 것을 확인했습니다.


3. S3 버킷 이미지 저장 확인

1) 원본 이미지 저장 bucket

  • 원본 이미지가 지정된 S3 버킷에 정상적으로 업로드된 것을 확인했습니다.

2) 리사이즈 이미지 저장 bucket

  • 리사이즈된 이미지가 별도의 S3 버킷에 정상적으로 저장된 것을 확인할 수 있었습니다..
  • 이미지 사이즈는 778.6KB에서 84.6KB로 약 89.13% 감소했습니다.


4. 웹 애플리케이션 동작 테스트

1) 원본 이미지 이미지 수신 확인

  • 웹 애플리케이션에서 CloudFront를 통해 원본 이미지를 정상적으로 수신했음을 확인할 수 있었습니다.

2) 리사이징 이미지 수신 확인

  • 웹 애플리케이션에서 CloudFront를 통해 리사이즈된 이미지도 정상적으로 수신되었음을 확인할 수 있었습니다.


결론

  • 이번 작업을 통해 Lambda와 S3를 활용한 이미지 리사이징과, CloudFront를 통한 이미지 배포까지 구현했습니다.
  • 리사이즈된 이미지를 사용함으로써 아웃바운드 데이터 양을 최대 93.75%까지 절감할 수 있었으며, 이를 통해 클라우드 서비스 비용을 효과적으로 절감할 수 있었습니다.
  • 이 방식은 특히 트래픽이 많이 발생하는 랭킹 페이지와 같은 페이지에서 유용하게 사용할 수 있었습니다.