-
Notifications
You must be signed in to change notification settings - Fork 3
클라우드 스토리지 처리 방식 회의 (11 11)
Soap edited this page Nov 27, 2024
·
1 revision
-
프론트가 직접 스토리지 업로드
-
과정
- 프론트가 백엔드에
pre-signed url
요청 - 백엔드가 스토리지에 요청해서
pre-signed url
응답 - 프론트는
pre-signed url
에 사진POST
- 성공 : 사진 URL 받음 → 백엔드 서버에 전달
- 실패 : 확장자, 크기, 네트워크 등의 원인으로 실패
- 프론트가 백엔드에
-
장점
- 서버 부하 감소
- 비동기적으로 이미지를 업로드해, 지도/코스 생성 API 응답 속도 상승
- 네트워크 전송 비용 감소
-
단점
-
pre-signed url
이 유출 되는 경우 보안에 대해 생각이 필요 - 프론트엔드에서 일관되지 않은 에러 응답에 대한 처리 필요
- 프론트에서 pre-signed url 가 만료되는 경우 재요청 등 추가 로직 필요
-
-
프론트에서 백엔드로 사진을 전송하고 백엔드에서 사진 처리
-
과정
- 프론트가 백엔드에 사진 업로드 요청
- 백엔드는 키가 있기에 바로 스토리지에 사진 업로드
- 성공 : 사진 URL
- 실패 : 백엔드에서 커스텀 에러 만들어서 전달
-
장점
- 프론트엔드가 버킷 권한에 접근할 필요가 없기 때문에 보안성 강화
- 백엔드에서 업로드 전후에 비즈니스 로직 처리 가능
- 프론트에서 일괄적인 백엔드 서버의 응답을 받을 수 있음
- (에러 핸들링 등을 백엔드 에서 처리하므로)
-
단점
- 이중 전송 과정에서 네트워크 전송 비용이 증가
- 백엔드 서버의 부하 증가 / 성능 저하
사용자가 올린 이미지에 대해 전처리 과정이 필요한가?
- 용량 제한을 두면 괜찮지 않을가
드래그앤 드랍에는 넉넉히 용량 제한 (대략 5mb?)
브라우저에서 라이브러리로 리사이징 후 , presigned url 에 업로드