RustFS - 프론트엔드에서 미디어 조회

TopOfTheHead·2026년 7월 26일

프론트엔드에서 이미지 로딩의 흐름
。프론트엔드가 이미지 데이터를 받기 위해 백엔드를 거치지 않고, S3에서 직접 데이터를 받으므로 백엔드 서버 부하가 감소.

。PresignedURL의 유효시간이 존재하여 외부에 노출되더라도 일정 시간 후 접근 불가능하여 보안적으로 우수

  • 순서
  1. 프론트엔드가 백엔드에 GET /media/{id} API를 요청하여 PresignedURL을 발급

  2. 프론트엔드는 발급된 PresignedURL를 통해 S3에 직접 요청해서 이미지 바이너리 ( JPG )를 다운로드ㅋ

CDN을 도입한 프론트엔드의 이미지 로딩 흐름
。프론트엔드가 S3으로부터 이미지 데이터 조회를 하는게 아닌, 1차적으로 CDN에서 이미지 조회를 수행
▶ CDN을 사용 시 자주 조회되는 이미지 데이터는 CDN에 캐싱되서 조금 더 빠르게 이미지 조회가 가능

。Client Host 위치에서 가장 근접한 데이터 센터의 CDN 이미지를 가져올 수 있으므로 조회 성능 향상

。S3을 사용하지 않고 CDN의 캐싱 데이터를 가져으므로, S3의 다운로드 요금이 발생하지 않는 장점이 존재.

  • 순서
  1. 프론트엔드에서 백엔드에 GET /media/{id} API를 통해 CDN URL을 요청

  2. 프론트엔드에서 수신한 CDN URL로 해당 미디어 파일의 Path를 요청


    3-1. CDN에서 해당 미디어 파일을 캐싱하여 Cache Hit한 경우 즉시 프론트엔드로 반환


    3-2. Cache Miss인 경우, S3으로 미디어 파일 요청 및 반환한 미디어파일을 프론트엔드로 응답
    。해당 미디어파일은 CDN에 저장하게 됨
profile
공부기록 블로그

0개의 댓글