위지웍 사용하는데, 이미지 처리 방법

조회수 2065회

웹을 node.js + express 로 구현 중입니다.

위지웍이라는 것을 알아서 summernote 로 구현해보고 있습니다.

그런데 위지웍에서 본문 내용을

<p>안녕</p><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAegAAAAgCAYAAADZnOthAAAMF2lDQ1BJQ0MgUHJvZmlsZ...">

이런 식으로 넘기길래 그대로 저장 후, html 형식으로 select 하여 로딩하니 그대로 이미지까지 불러올 수 있더라구요. 저 긴 코드가 이미지 자체 데이터인지...

  1. 보통 이미지 처리를 업로드 시키면 서버에 저장하고, 그 이미지 경로를 데이터베이스에 저장한 후, 로딩할 때 저장했던 이미지 경로로 불러오는 방법을 사용하나요?

  2. 위 같이 이미지 통째로 디비에 저장 후 불러 쓰는 방법은 어떤가요?

  3. 게시판 개발 관련하여 이미지 처리에 대해 이슈 조언 부탁드립니다.

1 답변

  • 좋아요

    1

    싫어요
    채택 취소하기

    위 방식은 base64로 바이너리(이미지) 데이터를 아스키로 인코딩 해서 텍스트 형태로 다루는 방법입니다.

    즉 이미지 자체가 맞습니다.

    위와 같이 처리하면 별도의 저장소를 만들지 않더라도 쉽게 첨부 이미지를 처리할 수 있으나 텍스트를 저장하는 디비 컬럼에 이미지 데이터가 저장되게 됨으로서 크기가 불필요하게 커질 수 있고 이미지 크기를 예측할 수 없기 때문에 컬럼 타입 설정에 제약이 생깁니다.

    구형 브라우저의 경우 이미지 크기 제한도 있고, 별도로 텍스트 데이터 등을 분석할 때도 불필요한 데이터가 됩니다.

    적어주신 1번 방법이 일반적인 구현입니다. 이 경우에이미지 경로가 웹서버 로컬 경로라면 웹서버를 N개로 확장했을 경우에 어느 서버에 해당 이미지가 존재하느냐 등 서비스 확장시에 다양한 문제가 발생합니다.

    서비스가 작을때는 서버간 데이터 공유를 위해서 nas등 공유 스토리지를 사용하는 경우가 많고, 서비스가 커지게 되서 이미지나 첨부 파일이 많아진다면 별도로 스토리지 서버를 구축하게 됩니다

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

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

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

(ಠ_ಠ)
(ಠ‿ಠ)