이미지 갤러리를 만드려고 합니다, 썸네일 용량과 저장방법에 대해 질문드립니다!

조회수 1196회

썸네일 이미지들이 모여있고, 그 썸네일을 클릭하면 해당 이미지가 크게 나타나게 하는 기본적인 갤러리 구조를 가진 웹사이트를 만들어 보고 있습니다.

현재는 썸네일을 원본 이미지와 같은 경로에서 가져오지만, 이미지 사이즈만을 줄여 불러왔습니다.

그런데 이미지들이 하나 둘 씩 점점 늘어나다보면 , 원본 이미지를 수십, 수백여개 불러오는 꼴이 되어 버리니 상당히 낭비인데, 어떻게 해결하는게 현명한 방법인지 여쭤보고 싶습니다.

원본이미지를 통해 썸네일을 불러올때 단순히 크기만을 줄이는게 아닌 용량또한 줄이는 방법이 있나요?

아니면 원본이미지를 통해 불러오는게 아닌 썸네일 파일들을 모아놓는 곳을 따로 만들고 , 그 썸네일 이미지들을 불러오는 것이 좋은가요? 아니면 다른 방법이 있을까요?

하나 더 질문을 드리자면 , div 요소에 background-image : url 을 사용하여 인라인 스타일 형태로 이미지 경로를 입력해주는 것이 좋은지, 스타일 시트에 따로 입력해주는 것이 좋은지.

div 요소 안에 img 태그로 불러와야 좋다면 그 이유도 궁금합니다 ...!! 도와주세요

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • 당연히 사이즈만 줄여 보여주는 방법은 구현은 편하겠지만 좋은 방법이 될 수 없습니다.

    데이터에 민감한 모바일 환경이면 더 그럴겁니다.

    당연히 썸네일용으로 이미지 크기를 줄일 수 있습니다. 이 부분은 서버측 프로그래밍이 필요한 부분입니다.

    썸네일 서비스를 위한 방법은 두가지 정도 떠오르는데요.

    첫번째는 서버측에서 해당 이미지의 썸네일을 생성하여 리턴하는 것이고 두번째로는 이미지의 썸네일을 미리 생성해놓고 리턴하는 겁니다.

    두가지 방법 다 장단점이 존재합니다,

    per request 방식으로 썸네일을 만들어내면 같은 요청시 같은 작업을 반복하므로 서버상의 부하가 커지고 많은 수의 요청을 감당하기 어려워집니다. 대신 썸네일을 별도 관리할 필요가 없습니다.

    이미지에 대해 썸네일을 미리 만들어 서비스 한다면 서비스 부하도 줄일수 있고 상대적으로 가볍게 서비스 가능할겁니다 대신 이미지가 변경되거나 신규 이미지가 추가 되거나 할 때마다 썸네일을 생성해줘야 하며 생성된 썸네일을 관리해야 합니다.

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)