웹 페이지 캐싱

CodeIgniter를 사용하면 최대 성능을 달성하기 위해 페이지를 캐시할 수 있습니다.

CodeIgniter는 상당히 빠르지만, 페이지에 표시하는 동적 정보의 양은 서버 리소스, 메모리, 처리 사이클 활용도와 직접적으로 연관되며, 이는 페이지 로드 속도에 영향을 줍니다. 페이지를 완전히 렌더링된 상태로 저장하기 때문에 페이지를 캐시하면 정적 웹 페이지에 가까운 성능을 달성할 수 있습니다.

캐싱은 어떻게 작동하나요?

캐싱은 페이지별로 활성화할 수 있으며, 새로 고침되기 전에 페이지가 캐시된 상태로 유지될 시간을 설정할 수 있습니다. 페이지가 처음 로드될 때 캐시 파일이 application/cache 폴더에 저장됩니다. 이후 페이지 로드 시 캐시 파일이 검색되어 요청한 사용자의 브라우저로 전송됩니다. 만료되면 브라우저로 전송되기 전에 삭제되고 새로 고침됩니다.

캐싱 활성화

캐싱을 활성화하려면 컨트롤러 메소드 중 하나에 다음 태그를 넣으세요:

$this->output->cache($n);

여기서 $n은 새로 고침 사이에 페이지가 캐시된 상태로 유지될 수입니다.

위 태그는 메소드 내 어디에나 넣을 수 있습니다. 표시되는 순서에 영향을 받지 않으므로 가장 논리적으로 보이는 곳에 배치하세요. 태그가 배치되면 페이지가 캐시되기 시작합니다.

중요

CodeIgniter가 출력을 위해 콘텐츠를 저장하는 방식 때문에 캐싱은 로 컨트롤러에 대한 디스플레이를 생성하는 경우에만 작동합니다.

중요

출력에 영향을 줄 수 있는 설정 옵션을 변경하면 캐시 파일을 수동으로 삭제해야 합니다.

참고

캐시 파일을 저장하려면 application/cache/ 디렉터리에 쓰기 권한을 설정해야 합니다.

캐시 삭제

파일을 더 이상 캐시하지 않으려면 캐싱 태그를 제거하면 만료 시 새로 고침되지 않습니다.

참고

태그를 제거해도 캐시가 즉시 삭제되지는 않습니다. 정상적으로 만료되어야 합니다.

캐시를 수동으로 삭제해야 하는 경우 delete_cache() 메소드를 사용할 수 있습니다:

// 현재 요청된 URI의 캐시를 삭제합니다
$this->output->delete_cache();

// /foo/bar의 캐시를 삭제합니다
$this->output->delete_cache('/foo/bar');