크게 작게 인쇄

XE 속도 개선팁 모음

모두 제가 쓴 글이 아니고 여기 저기 글을 참조하여 모은 내용이니 혹시 저작권에 문제가 생기면 알려주세요. 자삭하겠습니다.

대부분 1.4.10 기준이나 1.5 버전에서도 자세히 찾아보시면 수정하실 수 있을 거라 생각됩니다.

하시기 전에 반드시 백업하시고 작업하시는 것 잊지 마시고요!!!!


1. Cache 잡기

검색을 해보니 페이지의 Cache를 단 1분 이라도 잡는게 안잡는 것보다 속도에 영향을 미친다는 내용이 많이 있었습니다. 혹시 사이트의 수정이 거의 없는일반 페이지의 경우에는 가능한한 길게(예를 들어 10080분~20160분) 잡으세요. 게시판처럼 변화가 많은 페이지의 경우 캐싱시간 설정에서 1분으로 지정해 주세요!


2. CSS, JS파일, gzip으로 한꺼번에 압축해서 전송하기

내용 참고: http://www.xpressengine.com/19979181 

요거 대박 팁입니다!! 속도 개선에 눈에 띄는 결과가 나옵니다....

 

 

1. http://code.google.com/p/minify/ 에서 minify 최신버전을 다운받습니다. 현재는 minify 2.1.5 버전입니다.

2. 압축해제 한후, min 폴더내의 config.php 파일을 에디터에서 불러오기 합니다.

3. 47번째쯤 라인의 //$min_cachePath = '/tmp'; 라는 부분을 $min_cachePath = './tmp'; 로 수정합니다.

4. min 폴더안에 tmp 라는 폴더를 새로 만들기합니다.

5. min 폴더를 FTP 로 서버의 루트디렉토리에 업로드합니다.

6. 서버에 업로드된 min 폴더안의 tmp 폴더의 퍼미션을 707 로 권한 변경합니다.

7. XE 설치폴더안의 .htaccess 파일을 에디터에서 불러오기합니다.

8. 아래의 2가지 경우중 해당되는 구문을 .htaccess 파일의 맨 아랫줄에 추가합니다.

XE 설치경로가 /xe/ 로 사용되는 경우

RewriteRule ^(.*\.(css|js))$ ../min/index.php?f=xe/$1 [L]

XE 설치경로가 루트디렉토리인 경우

RewriteRule ^(.*\.(css|js))$ /min/index.php?f=$1 [L]

9. 수정한 .htaccess 파일을 XE 폴더에 덮어쓰기 합니다.

 

제대로 설치됐는지 확인하시려면 사이트를 들어가서 트래픽을 발생시키셔서 tmp 폴더에 minify_xml ...로 시작하는 이상한 이름의 파일들이 생성되면 Okay!

 

3. XE에서 Gzip 사용하기

어떤 분이 쓰신 글인데, 원본글의 출처가 어디인지 찾을 수가 없어서 그냥 인용으로 합니다.


사이트가 넘 느려서 계속 고민하다가

gzip, defalte 압축을 하면 압축해서 text 문서가 왔다갔다 한다는 걸 듣고 이걸 적용해 볼려고

gooleing 했슴다.

근데 다 VPS 호스트 적용하는 거라 쉽지가 안더라구요.

근데 우리 XE 개발자님들 너무 감사해서 뽀뽀라도 해드리고 싶은 심정이네요.

XE 소스 안에 gzip적용할건지 Flag가 있더라구요.

고것만 true로 해주면 gzip OK!!

 

 

1. ./classes/display/DisplayHandler.class.php 파일을 에디터에서 불러오기 합니다.

2. 15번째줄에 var $gz_enabled = false;var $gz_enabled = true; 로 수정합니다.

3. 수정한 DisplayHandler.class.php 파일을 서버의 해당 경로에 덮어쓰기 합니다.

 

사이트가 갑자기 날아다니는 듯한 기분??!!

확실한 차이 느낍니다.

Http header확인해 보는 방법은

http://www.askapache.com/online-tools/http-headers-tool/

이 사이트의 target URL에 입력후 밑에 버튼 누르면 target url의 header 분석해서 보여줍니다.

Content-Encoding: gzip 이라고 보입니다.


4. zlib.output_compression 사용하기

예전에 어떤 분이 여기 사용팁란에 올리셨는데 자삭하셨더라고요. 그래서 인용으로 합니다.


xe는 웹페이지 로딩 속도를 빠르게하기위해 내부적으로 ob_gzhandler함수를 사용하고있다.
성능면에서 ob_gzhandler 은 별로 안좋으며 PHP 권장사항으로도 ob_gzhandler 대신 zlib.output_compression 사용할것을 권장하고있다.

zlib.output_compression 을 사용하는방법..

xe 1.4.5.10 기준..

xe/config/config.inc.php 100 line..

if(!defined('__OB_GZHANDLER_ENABLE__')) define('__OB_GZHANDLER_ENABLE__', 1); 제거후 그자리에 아래 코드 추가..

define('__OB_GZHANDLER_ENABLE__', 0);
ini_set('zlib.output_compression', 'On');
ini_set('zlib.output_compression_level', 6);

xe/modules/file/file.controller.php 124 line..

function procFileDownload() { 다음행에 아래 코드 추가..

ini_set('zlib.output_compression', 'Off');

단 적용시 기존 파일은 백업하고 적용하시면 됩니다.


수정 소스가 있습니다. (방법)


1.4.5.10 버전 기준으로 했다고 하는데

제 홈피 1.5.0.7 버전에 적용해본결과 상당 외로 빠릅니다.

크롬,익스플로러8, 파이어폭스 등의 브라우저에서 확인 해본결과

생각 외로 빠릅니다.

하지만 제 주관적 느낌 입니다.

참고 > 웹 브라우저 로딩 속도 비교 사이트 http://whichloadsfaster.com/


5. 수정된 xml_handler.js 와 xml_js_filter.js 사용

참고: http://www.xpressengine.com/userForum/20681364

에 배워서 남준다님의 첫번째 댓글 내용과 첨부파일.

 

1. 아래 첨부된 xml_handler.zip 파일을 압축해제 합니다.

첨부파일 :  xml_handler.zip

2. xml_handler.js 파일과 xml_js_filter.js 파일을 XE 설치폴더내의 ./common/js/ 폴더 안에 덮어쓰기 합니다.



 출처 : http://www.xpressengine.com/tip/20681877



※ 로그인 하시면 원본파일을 볼 수 있습니다. ※

0
코멘트 1
  • 슈퍼맨 웹스터디 2012-10-15 04:29:47

    0

    '쿠로쿠마'님 댓글 - 전 xe 1.2 까지 써보다가 한 3-4년간 웹관련 취미를 버렸다가 최근에 시간적 여유가 생겨서 xe를 다시한번 공부하려고 이곳저곳을 기웃거리고 있습니다. 그러다가 xe의 응답속도에 관련해서 불만글이 많아 아직 xe를 사용해여할지말지를 망설이던 중에  老姜君님글을 보겠됐습니다. 글에 쓰인 sql을 보니 전부 IN 이 쓰여있네요. 아마도 db의 종류를 절약하기위해서 여러 목적의 db를 하나로 통합해서 사용하는것 같습니다. 그래서 필요한 항목을 뽑기위해 IN을 사용하는것 같습니다만, sql에서 IN을 사용하는 것은 별로 권장할수 없는 습관입니다.

    IN의 경우 DB구조에 아주 민감해서 꽤 높은 확률로 dbms의 처리속도를 낮추는 원인이 된곤합니다.

    그렇기 때문에 일본의 경우(전 일본에 살고있습니다)  많은양의 데이터를 처리하는 회사에서는 높은레벨의 db관리자를 제외하고 sql발행시 IN 사용을 금지하는 경우가  많습니다.

     1개의 db에 사용되는 컬럼수와 사용빈도에도 영향을 받지만, 작은 용량의 서버의 경우 1개db에서 약 20만건정도의 데이터를 가지고 (특히 indexing처리가 되지않은) 특정 컬럼을 IN으로 검색할경우 급격히 성능이 저하되는 원인중의 하나가 됩니다.

    개발자분들중에 DB전문가가 없으시다면 DB설계하시는 분을 찾아가서 현재의 DB구조를 점검받고 사용sql을 첵크해서 효율적인 sql을 재구성하는게 좋을것 같군요. sql이라는게 아주 편리하지만 제한없이 사용할경우 시스템에 아주 심각한 영향을 끼친답니다.

    답글달기

자동등록방지 코드
XE팁 | 전체게시물 20
안내

포인트안내닫기

  • 글읽기0
  • 글쓰기100
  • 댓글쓰기50
  • 다운로드-500
XE팁리스트
번호 제목 글쓴이 날짜 조회 추천
20 텍스트 링크 슈퍼맨 웹스터디 05-23 3734 0
19 파일첨부 +1 링크 슈퍼맨 웹스터디 05-16 3045 0
18 텍스트 슈퍼맨 웹스터디 05-14 2991 1
17 텍스트 슈퍼맨 웹스터디 09-07 3262 0
16 텍스트
XE 속도 개선팁 모음
+1 링크
슈퍼맨 웹스터디 04-16 3234 0
15 텍스트 링크 슈퍼맨 웹스터디 03-31 3054 0
14 텍스트 링크 슈퍼맨 웹스터디 02-21 3839 0
13 텍스트 슈퍼맨 웹스터디 02-21 2753 0
12 텍스트 슈퍼맨 웹스터디 02-15 2790 0
11 텍스트 +2 링크 슈퍼맨 웹스터디 02-08 3653 0
10 파일첨부 링크 슈퍼맨 웹스터디 02-01 2889 0
9 텍스트 +2 슈퍼맨 관리자 12-15 2990 0
8 파일첨부 +1 슈퍼맨 웹스터디 12-04 4202 1
7 답변 텍스트 슈퍼맨 웹스터디 12-04 2820 0
6 파일첨부 슈퍼맨 웹스터디 12-04 4317 0
5 텍스트 슈퍼맨 웹스터디 12-04 3163 0
4 텍스트 슈퍼맨 웹스터디 12-04 2638 0
3 텍스트 슈퍼맨 웹스터디 12-04 2691 0
2 텍스트 +1 슈퍼맨 웹스터디 12-04 2410 0
1 파일첨부 링크 슈퍼맨 웹스터디 12-04 2731 0