'사랑하기/텍스트큐브'에 해당되는 글 2ATOM

  1. 2008/09/21 inureyes 텍스트큐브 트래픽 줄이기 (1) 외부 리소스 사용 2
  2. 2008/09/21 inureyes 텍스트큐브 카테고리 추가

텍스트큐브를 대용량 트래픽에 대응하여 사용할 수 있도록 하기 위한 다양한 방법들이 있다. 다양한 방법들이 텍스트큐브 내에 들어있고, 또한 다양한 방법으로 텍스트큐브의 최적화가 가능하다. 텍스트큐브의 트래픽에 병목 현상을 가져오는 요소는 크게 세 가지가 있다. 여기서의 트래픽은 단순히 일일 회선 용량뿐만이 아니라 동시 접속자수 등을 포함한 개념이다.

  1. 세션 생성 및 유지, 삭제, 보수 과정
  2. 자바스크립트 컴포넌트 및 정적 컴포넌트를 불러오거나 스킨의 이미지등을 불러오는 과정
  3. 랜덤 태그 지원

이 세 부분은 텍스트큐브의 로드에 큰 영향을 준다. 서버의 설정에 따라 다르겠지만, 위의 문제들을 개선하는 것 만으로도 텍스트큐브는 동일 리소스로 600%에서 1500%의 동시 접속자 수를 감당할 수 있게 된다.1

위의 문제점 중 두 번째 문제를 해결하는 가장 간단한 방법인 외부 리소스를 사용하는 법에 대해서 설명해 본다.

 

외부 정적 리소스 사용하기

텍스트큐브는 다른 도구에 비하여 실시간 AJAX 및 다양한 기능을 처리하기 위하여 블로그 페이지에서 호출하는 프레임웍 용량이 큰 편이다. (그만큼 지원하는 기능도 많다) 방문자의 브라우저에 기본적으로 로딩되는 EAF#.js 및 common#.js, gallery.js 등의 용량 합계는 약 60kb에 달한다. 이미지 위주의 블로그라면 이 정도의 용량이 큰 비중은 아니겠지만, 이미지 없고 (또는 플리커나 피카사에서 이미지를 불러쓰고) 텍스트위주의 스킨 및 블로그의 경우 자바스크립트 로딩 용량은 때로는 배보다 배꼽이 더 큰 상황을 발생시킨다.

60kb는 적어보이지만 100명의 방문자가 6메가바이트를, 1000명의 방문자가 60메가바이트의 트래픽을 소모하는 양이다. 물론 방문자의 브라우저에 캐싱되기 때문에 자주 방문하는 사용자들의 경우에는 새로 불러오는 경우가 줄겠지만, 블로거뉴스등의 트래픽 몰이가 들어오면 만 명의 사용자에게 600메가의 트래픽을 자바스크립트 프레임웍 전송에만 소모하게 된다.

텍스트큐브 1.7.6 이상에서는 외부의 공개된 저장소나, 자신이 지정한 곳에서 자바스크립트 프레임웍등의 정적 리소스를 불러올 수 있다. 해당 기능을 사용할 경우 특별히 저장소를 지정하지 않으면 기본값으로 [TNF](http://forum.tattersite.com/ko)  에서 [다음 커뮤니케이션](http://www.daum.net)  으로부터 지원받은 서버를 이용하여 운영하는 텍스트큐브 리소스 페이지 ( http://resources.textcube.org  ) 를 사용한다.

이 기능을 사용하기 위해서는 아래의 방법을 따르게 된다.

  1. 우선 텍스트큐브를 1.7.6 이상으로 업그레이드한다. (그 이전 버전에는 이 기능이 없다...)
  2. 텍스트큐브의 최고 관리자 계정 (처음 설치할 때 만든 계정이다) 으로 로그인한다. 이 경우 일반 사용자와는 다르게 '서비스 관리' 메뉴가 나타난다. 1.8 이상에서는 서비스 관리 아이콘을 볼 수 있다.
  3. 서비스 관리 - 서버 메뉴를 선택한다.
  4. 외부 리소스 사용을 체크한다.

 

사용자 삽입 이미지

표시한 부분에 체크하고 저장하면 된다. 스샷은 1.8 알파 기준. (1.7.6 이상에서도 동일한 메뉴에 위치하고 있으므로 찾기 쉽다)

 

만약 기본값으로 지정된 TNF 리소스 서버를 사용하지 않을 경우, 공개되어 있는 외부 리소스 주소를 아래에 추가적으로 적으면 된다. 이 경우 외부 리소스를 그 경로에서 읽어오게 된다. 용량 제한이 없는 서버가 있는 경우 그 서버에 1.8은 resources 이하의 파일들을, 1.7 버전들은 script 디렉토리를 웹에 올려놓고 그 경로를 적으면 된다.

 

 

외부 리소스를 사용할 경우 단순히 트래픽만 줄어드는 것이 아니라 서버가 파일을 제공할 필요가 없으므로 connection 및 서버 로드도 감소시키는 효과가 있다. 옵션 조절만으로 큰 이득을 얻을 수 있으므로 사용하기를 권장한다. (기본값은 사용하지 않는 것이다.)

이 기능은 로그인 후 들어가는 관리 패널에는 적용되지 않는다. 지정한 저장소에 문제가 생길 경우 설정을 변경할 수 있어야 하며, 임의로 지정한 저장소가 해킹당했을 경우 위험성이 생기기 때문이다.

다음에는 세션 관리 부분의 최적화에 대해서 이야기해 볼 예정이다.

 

크리에이티브 커먼즈 라이센스
Creative Commons License
  1. P3 1.4GHz 시스템 기준의 테스트이으로 사양에 따라 다를것이다.
2008/09/21 17:32 2008/09/21 17:32
트랙백이하나이고 , 댓글 2개가 달렸습니다.
ATOM Icon 이 글의 댓글이나 트랙백을 계속 따라가며 보고 싶으신 경우 ATOM 구독기로 이 피드를 구독하세요.