해결된 질문
작성
·
230
·
수정됨
0
안녕하세요.
설명해주신 이미지 업로드 프로세스가 조금 비효율적이라는 생각이 들어서 질문드립니다.
설명해주신 프로세스는 브라우저에서 게시글을 등록할 때 이미지를 선택하면 백엔드로 이미지를 보내고, 백엔드에서 클라우드로 이미지를 업로드 한 후, 주소를 받아서 다시 브라우저로 보내주는 방식입니다.
그런데 브라우저에서 이미지를 취소하거나, 다른거로 변경하게되면 이전에 선택해서 클라우드에 올렸던 이미지는 필요가 없어지고, 앞서 했던 행동들이 무의미 해져서 불필요한 통신이라고 생각이 듭니다.
그래서 이미지를 선택했을 때가 아닌, 글등록을 눌렀을 때 선택한 이미지도 같이 백엔드로 보내주고, 백엔드에서는 클라우드로 이미지를 업로드한 후 받은 url을 바로 DB에 저장하면 브라우저로 다시 url을 보내지 않아 통신횟수도 줄게되어 더 좋을것 같은데, 강의에서 처럼 이미지를 먼저 받아서 처리하는 이유가 있을까요??
답변 2
0
안녕하세요! 춘몽님!
좋은 질문이에요!
프론트엔드 수업 질문으로 예상되는데, 실제 해당 수업 마지막에 퀴즈가 나가게 됩니다!
퀴즈는 바로 비효율적인 부분 2개 찾기 인데요!
벌써 1개는 찾으신 것 같네요!^^
1개를 더 찾고 해답은 뒤에 이미지최적화 수업에서 확인해 보세요!^^
0
안녕하세요, 인프런 AI 인턴입니다.
춘몽님의 질문에 답하자면, 이미지를 브라우저에서 바로 백엔드로 보내지 않고, 강의에서 설명한 것처럼 이미지 업로드 과정을 거치는 다양한 이유가 있을 수 있습니다. 여기 몇 가지 잠재적인 이유를 제시해드리겠습니다.
보안: 사용자가 업로드하는 이미지에 악성 코드가 포함될 가능성이 있어, 백엔드 서버를 통해서 클라우드로 업로드하는 과정에서 이미지의 유효성 검사나 안전성을 확인할 수 있습니다.
용량 변환 및 최적화: 이미지를 서버를 통해 업로드하면, 서버에서 이미지의 크기를 조정하거나 품질을 변경하여 저장 공간을 절약하고, 전송 시간을 단축시킬 수 있습니다. 이는 특히 모바일 환경에서 중요할 수 있습니다.
유저 경험: 게시글 작성 중 이미지를 미리 업로드하면, 사용자가 게시글 등록 버튼을 클릭했을 때 이미지와 함께 바로 게시물이 등록되는 것처럼 느낄 수 있어서, 대기 시간이 줄어들어 사용자 경험이 개선될 수 있습니다.
로딩 시간 최소화: 전체 게시글과 이미지를 한 번에 업로드할 경우, 큰 이미지 파일로 인해 게시글 업로드 시간이 길어질 수 있습니다. 이미지를 미리 업로드하면, 이런 지연을 방지할 수 있습니다.
서버 부하 분산: 사용자가 이미지와 게시글을 분리하여 업로드하면, 서버 리소스의 부하를 분산시킬 수 있어 서버의 효율적인 관리가 가능합니다.
이러한 이유로 인해, 강의에서 설명드린 프로세스를 선택했을 가능성이 있습니다. 하지만 각각의 프로젝트 요구사항과 환경에 따라 최적의 접근 방식은 달라질 수 있으므로, 상황에 따라 가장 합리적인 방법을 선택하는 것이 중요합니다.