서버용량의 한계를 극복해보자 (4) – dropbox.com을 이미지 서버로 활용하기

     몇 달 전 플러그인 설치방법에 관해 글을 올리면서 글의 말미에 dropbox.com을  이미지 서버로 이용한다는 것을 밝힌 적이 있다.  이것이 결국 일종의 cdn 이라는 것을 뒤늦게 알아차렸지만 사용 방법이 불편해서cloudinary를 알게된 이후로는 새로운 글을 올릴 때에는 더 이상 적용하고 있지 않다.

     하지만 많은 우리 주변에는 많은 무료 클라우드 서비스가 있고 그 클라우드가 누구나 접속이 가능한 public folder를 가지고 있다면  그 저장용량과 접속 허용 밴드 폭에 따라서 그에 적합한 cdn으로 적용할 수 있는 가능성이 있다.   dropbox 는  2012.10.4. 이후 가입자부터는 public folder서비스가 시행되고 있지 않아서 새로 가입하여 적용하기에는 곤란하고 앞으로 서비스의 운명이 어떻게 될지 알 수도 없어 기존 계정 사용자라고해도 안정적인 사용이 보장되지 않겠지만 나름대로 cdn 의 기술적 의미와 적용방법에 관해서 기록해두는 것도 의미있을 것이다.

1. dropbox의 특징

    dropbox는 총 저장용량이 2GB 정도로 그리 크지는 않지만 일일 허용 트래픽이  20GB에 달해서 블로그 글 중에서 빈번한 인기 포스트에 포함된 이미지나  그 밖에 스타일 파일, 자바스크립트 파일 등 병목현상을 일으키는 static 파일들의 cdn 으로 활용이 가능하다.

2. 이미지 cdn 적용사례

하루가 멀다하고 호스팅 서비스를 여기저기 옮겨 다녀야 했던  워드프레스 입문 초기에  필자를 가장 힘들게 했던 것은 포스트에 첨부된 이미지 파일을 원래의 상태 대로 유지하는 것이었다.  서버를 여러 번 옮기고 난 후에 이미지 파일이 어디에 어떻게 저장되고 있는지 알게 된 이후 서버 이전과 무관하게 주소를 적용할 필요성을 느끼게 되었다.

기본적으로는 누구나 접속이 가능한 ‘PUBLIC FOLDER’ 가 있는 여러 클라우드 서비스라면 가능할 것이라고 생각되어 여러 클라우드 서비스를 테스트해 보았지만 워드프레스 자체 편집기에서는 글 쓰는 중에 파일의 주소를 기록하는 것 만으로는 이미지가 제대로 표시되지 않았다.

온라인 상의 이미지를 삽입 가능하고 편집 후에 직접 블로그로 posting이 가능한 글 편집기가 필요했다.  (워드 프레스의 자체 편집기에서  URL 을 기록하는 방법으로 그림을 첨부할 수있다는 사실을 최근에야 알게 되었다.)  여러 테스트를 거친 끝에 MS live writer 가 xmlrpc ( 글 편집 후에 직접 워드프레스로 post 하는) 기능이 있고  dropbox가 제공하는 링크주소를 붙여 넣기하면 이미지가 부드럽게 표현되는 것을 확인하였다.  MS word도 xmlrpc 기능이 있지만 무엇보다도 MS live writer가  MS word 에 비해서 몸집이 가벼워 부팅이 빠르고 워드프레스 자체 편집기에 비해도 나름대로 편리한 점도 있어서 일정기간 동안 활용해왔다.
물론 몸집이 가볍기로는 성능이 우수한 웹 서비스라는 장점 때문에 구글docs 가 단연 으뜸이지만 워드프레스에 대한 송고기능(xmlrpc)이 없다.

  3.  분산 서버로서의 사례-  1) 다른 블로거의 사례

 kalkin7 같은 분은 supper-cache 플러그인에서 요구하는  cdn 주소에 드롭박스 주소를 적어넣어서 cdn으로 적용하는 사례를 자신의 블로그에서 밝히고 있다.    필자의 경우에 아직 super cache의 적용방법에 익숙하지않아서 테스트 해보지 못했지만 나중에 꼭 한번 테스트 해보고 싶은 방법이다.

4.  분산 서버로서의 사례-  2) 필자의 적용사례 (dropbox cdn plugin 적용)

    필자의 경우에는 우연히 wordpress.org 사이트에서 드롭박스를 cdn으로 적용하는 플러그인을 발견하여 테스트해보았다.

     css와 스크립트 파일 등이 병목현상에 어떻게 영향주는지 알아보기 위해서현재 폐쇄를 앞두고 있는 사이트로서 포스트 글은 모두 지워지고 몇가지 중요한 플러그인 들만을 남겨둔 상태의 사이트를 대상으로해보았다.

     재미있는 것은 테스트 중에 알게된것은 이 플러그인은 메인 테마의 css파일만을 적용대상으로한다는 것이다.

우선 적용 전후의 성능변화를 살펴보자

performance-before-cdn
performance-before-cdn

 

 

performance-after-cdn
performance-after-cdn

 

cdn을 적용하기 전에는 분명히 압축권고 대상의 최상위에 메인테마의 style.css파일이 적시되어 있었지만  cdn을 적용하고 난 이후에는 압축권고 대상파일 리스트에서 사라지고 대신 최상 위에는 cdn적용 전에 style.css다음 순위로 되어 있던 파일이 최우선으로 리스트에 올라있다.

      흥미로운 것은 성능 점수가 그것 만으로도 73–> 77로 4점이나 증가하고있다는 점이다.  이것은 스타일 파일이 얼마나  사이트의 성능에 영향을 주고 있는지 잘 설명해준다.  스타일 파일이 다른 서버로 이전해 간 것은 두가지의 효과를 얻으ㄹ수있다고 예상할수있다. 하나는 메인  블로그 호스트 서버의 성능보다  dropbox의 성능이 우수할 수 있다는 점이고 다른 하나는 성능이 낮은 무료서버에서 용량이 큰 파일의 전송 대상에서 제외됨으로서 병목현상이 크게 줄아들게된다는 점이다.    필자가 생각하기로는 후자의 효과가 더 클것이라고 판단한다.

    결과가  긍정적이어서 다른 블로그 사이트들에 적용하였고.  해외서버와 국내 서버에서 모두  유사한 효과를 얻을 수 있었다.

    필자는 현재 분산서버의 대안으로서 google library plugin을 설치하였다. 이렇게 하면 google library가 상용으로 많이 쓰이는 스크립트 파일의 cdn역할을 한다. 또한 super cache의 대안으로는 hyper cache 플러그인을 적용하여 데크스탑에서의 성능을 75점 정도까지 끌어올렸다.

글을 써놓고 한참을 다른 일을 하느라 업로드하는 걸 잊고 있었다.  ㅋ

 

소셜댓글

Loading Disqus Comments ...

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.