미디어위키 파일 캐시
From IT Wiki
미디어위키에선 선택적으로 렌더링 완료된 HTML 파일을 저장해두는 캐싱 메커니즘을 제공한다.
- HTML 파일로 저장이 된 페이지는 DB I/O 없이 HTML을 바로 출력하므로 속도도 빠르고 부하도 줄어든다.
- 단, 로그인된 유저는 개별 스킨 적용 등의 사유로 해당 메커니즘의 적용을 받지 않는다.
사용법[edit | edit source]
- LocalSetting.php 에서 활성화시킬 수 있다. (기본적으로 꺼져있다.)
$wgUseFileCache = true; $wgFileCacheDirectory = "$IP/cache"; # $wgFileCacheDirectory 는 따로 설정하지 않으면 기본 폴더가 $IP/images/cache 로 설정된다.
- 캐싱 폴더로 들어가보면 아래와 같이 문서들이 파일로 저장되어 있다.
-rw-r--r-- 1 apache apache 57421 Jan 7 01:58 cache/0/04/P%C3%A1gina_principal.html -rw-r--r-- 1 apache apache 29608 Jan 4 16:37 cache/1/17/P%C3%A1gina_Riscada.html -rw-r--r-- 1 apache apache 21592 Jan 3 07:27 cache/1/1c/P%C3%A1gina_Duplicada.html -rw-r--r-- 1 apache apache 36088 Jan 7 02:03 cache/2/24/P%C3%A1gina_principal_alternativa.html -rw-r--r-- 1 apache apache 44205 Jan 7 06:10 cache/a/a4/P%C3%A1gina_linkada.html -rw-r--r-- 1 apache apache 24686 Jan 3 07:27 cache/d/db/P%C3%A1gina_Invertida.html -rw-r--r-- 1 apache apache 17222 Jan 3 06:28 cache/f/f0/P%C3%A1gina_n%C3%A3o_encontrada.html
적용 범위[edit | edit source]
- 로그인되지 않은 사용자들에게만 적용된다.
- 테스트해 보면 로그인 안된 사용자들은 한번 들어간 페이지가 매우 빠르게 뜨지만, 로그인된 사용자는 여전히 느리게 뜬다. 로그인된 사용자들을 위해선 멤케시드 같은 다른 캐싱 메커니즘을 적용해줘야 한다.
- 특수 페이지엔 적용되지 않는다.
- 넘겨주기 페이지엔 적용되지 않는다.
캐시 압축[edit | edit source]
아래와 같은 설정으로 캐시를 압축해서 저장할 수 있다.
$wgUseGzip = true;
- 이 설정을 하면 캐시는 .html.gz 확장자로 저장된다.
- 트래픽을 줄일 수 있지만 속도는 좀 더 느리다.
트러블 슈팅[edit | edit source]
- 캐시 파일이 생성되지 않는 경우, 설정한 캐시 폴더에 퍼미션이 없을 수 있다.
- 문서의 제목이 너무 긴 경우 캐시 파일이 생성되지 않는다.