캐쉬


는 리소스의 화면을 처리하기 위해서 복잡한 과정을 거치게 됩니다. 리소스의 파일을 재귀적으로 합성하고, 적용된 템플릿 언어를 분석하여 처리를 하게 됩니다.

템플릿은 뷰 html과 데이터를 결합하여 화면에 출력을 합니다. 하지만 이러한 뷰와 데이터를 결합하는 작업들은 수많은 문자열 처리를 해야 되기 때문이 성능을 많이 요구합니다. 파일의 처리와 템플릿 언어를 분석하는 것은 많은 컴퓨터의 자원을 소모하게 됩니다.

여러 사용자가 동일한 페이지를 접근시에 프레임웍은 이 화면을 모두 각각 렌더링 을 만들어야 합니다. 매번 요청시 이러한 부하를 처리하는 것보다는 작업한 내역을 저장해 놓고 재사용 하는 것이 유용합니다.

실시간으로 데이터를 처리해야 하지 않는 템플릿의 경우 . 캐쉬형태로 저장하여 임시저장 할 수 있습니다.

캐쉬 저장


이를 빠르게 처리하기 위해서 캐쉬 파일을 저장합니다. 캐쉬파일은 원본 데이터의 수정여부를 모니터링하여 실시간으로 동적 재생성이 됩니다.

캐쉬 제한


웹 사이트의 템플릿을 캐쉬처리하여 브라우저로 데이터를 전송하는 것은 서버의 많은 성능 개선 효과가 있습니다. 하지만, 개발중인 웹 작업의 경우 캐쉬처리로 인하여 실시간 작업내용을 반영하기에는 어렵습니다. 이런경우 잠시 캐쉬 기능을 꺼둘 수 있습니다.

환경설정 .env.php 파일에서 템플릿 캐쉬를 비활성으로 변경해 주시면 됩니다.

'Tamplate'=> [
    'cache' => false
],

서버캐쉬


지니PHP의 개쉬처리 이외에도 서버사이드의 캐쉬를 같이 사용할 수도 있습니다.

맴케쉬 및 레디스


이전의 케시의 경우 프레임워크에서 실시간 캐쉬를 만들어 처리하는 것과 달리 서버에서서 별도의 시스템을 설치하여 동작하는 방식입니다.

파일 데이터


모델에서는 전용 RDBMS를 연동하여 처리하는 것과 달리. 폴더 구조로 저장된 데이터를 기반으로 처리를 할 수 있습니다.

파일 디렉토리 구조에 따라서 데이터를 생상하고 화면에 출력을 합니다. 파일 데이터의 경우 여러서버를 이용하여 처리하는 경우 동기화 시간 오차가 발생될 수 있습니다.