질문을 삭제하지 말아주세요.!
 
1
0
-1

제가 하고 있는 코드가 맞는지 모르겠습니다.


좀 아닌 것 같아서 문의드려요..

이미지 관련하여, 

기존에는 public / images 폴더 아래에 이미지를 두어서 직접 로드하였는데요..


이것저것 눈팅하다가, 

+


이렇게 만들었는데요.

이미지 뜨는 것이 너무 느리고,  비효율적인것같은데요.. 

이렇게 하는 것이 맞는지 모르겠습니다.


image encode 안하고 그냥 바로 뿌리면 빠를 것같은데..

그러면 304가 안뜨고 어덯게 해야야할가요 ?

    CommentAdd your comment...

    1 answer

    1.  
      1
      0
      -1

      기존에는 public / images 폴더 아래에 이미지를 두어서 직접 로드하였는데요.


      이미 이렇게 하셨다가 변경하신 이유가 궁금합니다. WebServerDocumentRoot/images 폴더에 이미지를 배치하면, 웹 서버가 자동으로 Etag 또는 Last-Modified 등의 헤더값을 응답합니다. 웹 서버가 고정적으로 제공해야 하는 정적 이미지 리소스가 있다면 웹 서버에 의존하는 것이 성능상 훨씬 낫습니다.

      애플리케이션 서버가 이미지를 직접 응답해야 하는 유스 케이스는, 사용자가 업로드하는 이미지이며, 그 이미지가 아주 많아서 웹 서버 루트에서 서비스하기 힘든 경우입니다. 깃허브의 PR, Commit 댓글에 이미지를 올리는 경우 등을 상정해 볼 수 있습니다.

      이때도 제가 알고 있는 더 좋은 방법은 1) 이미지만 서비스하는 별도의 웹 서버를 두거나, 2) S3와 같이 HTTP로 접근이 가능한 Object Storage를 쓰는 것입니다. 이 모든 경우 웹 서버의 캐시 기능을 그대로 이용할 수 있습니다.

      제 책/강좌에서는 Etag등의 캐시 기능을 설명하기 위해 억지로 만들어낸 케이스입니다.

      1. 안유성

        캐시 기능을 위한 예제였었군요..

        저는 꼭써야하는지 알고 있었네요..


        감사합니다~

      CommentAdd your comment...