개발자

서버에서 이미지 반환시 s3 url과 base64중 어느것이 나을까요?

2024년 06월 17일조회 153

서버에서 이미지 반환시 s3에 저장된 이미지의 url을 반환하는 방법을 주로 사용했습니다. 그런데 이미지가 10개라면 클라이언트에서 총 11번 리퀘스트를 보내야 하니 성능이나 비용에 문제가 생길 수 있다, 그래서 파일 크기가 작은 이미지를 여러개 반환하는 경우, base64로 인코딩해서 api응답에 한번에 보내는게 낫다는 이야기를 들었는데 현직자 분들은 어떤 방법이 더 좋다고 생각하시는지 궁금합니다.

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 1

삭제된 사용자님의 프로필 사진

삭제된 사용자

2024년 06월 18일

s3 bulk insert 있습니다. 리스트로 한번에 넘겨주면 돼요 putObject() 말고 TransferManager 활용하시면 됩니다. ref : https://docs.aws.amazon.com/ko_kr/sdk-for-java/v1/developer-guide/examples-s3-transfermanager.html#transfermanager-upload-file-list 바이너리 쓰는 것도 나쁘진 않은데 전략에 맞게 다양하게 활용하시면 될 것 같습니다.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2024년 06월 17일

이미지를 반환하는 방법은 여러 가지 상황에 따라 다릅니다. 1. S3 URL: 대용량 이미지나 동영상 등을 반환할 때는 S3 URL을 사용하는 것이 좋습니다. 이 방법은 클라이언트가 필요할 때만 이미지를 다운로드 할 수 있게 하므로 효율적입니다. 또한, S3는 비용 효율적이며 확장성과 내구성이 뛰어난 저장소 서비스입니다. 2. Base64 인코딩: 작은 이미지나 아이콘 등을 클라이언트에 전송할 때 Base64 인코딩을 사용할 수 있습니다. 이 방법은 HTTP 요청의 수를 줄일 수 있으므로, 애플리케이션의 성능을 향상시킬 수 있습니다. 그러나 Base64 인코딩은 원본 데이터 크기보다 약 33% 정도 크기가 증가하므로 대용량 데이터에는 적합하지 않습니다. 즉, 어떤 방식으로 이미지를 처리하느냐는 응용 프로그램의 유형 및 데이터 크기, 네트워크 상태 등 여러 상황에 따라 달라집니다. 따라서 주어진 상황과 요구 사항에 맞게 적절한 전략을 선택하는 것이 중요합니다. 일반적으로는 S3 URL를 주로 사용하고, 상황에 따라 Base64 인코딩 방식을 활용하는 것이 좋습니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!