2014-12-28 1 views
2

만들고있는 캐시 변형을 처리하고 확인하는 방법을 알고 싶습니다. symfony2/twig에서 캐시 변수를 처리하고 디버그하는 방법

의 내가 프로젝트를 가지고 추가한다고 가정 해 봅시다

...
<a href="#">Logout {{ app.user }}</a> 

... 모든 페이지의 머리에. 이 경우 app.user는 fos_user_bundle의 일부입니다.

모든 사용자에 대해 페이지의 콘텐츠 (사용자 이름)가 달라집니다. 따라서 캐시 변형 수는 즉시 사용자 수에 따라 증가합니다.

는 전에 : 50.000 캐시

각 끝에 모든 사용자에 대해 변형 캐시 생성 symfony2 것인가를 변형 = 100 페이지 * 500 사용자 : 100 페이지, 100 캐시 후

변형? 이 부분은 어디에서 제어됩니까?

나는 ESI (Edge Side Includes)와 함께 작업 할 수 있음을 알고 있습니다. 변형을 방지하기 위해 여기에서해야합니까?

어디에서 제작중인 캐시 변형을보고 확인할 수 있습니까?

도움 주셔서 감사합니다.

답변

1

Twig는 app/cache/dev 또는 app/cache/prod 폴더에 저장된 실행 코드로 구문 분석됩니다. 변수를 나뭇 가지 파일에 삽입하면 간단한 변수로 PHP 파일에 전달되므로 수천 명의 사용자에게 응용 프로그램을 제공 할 수 있으며 변형 수에 영향을 미치지 않습니다. 예를 들어

,이 같은 라인 나뭇 가지가있는 경우 :

<a href="#">Logout {{ app.user }}</a> 

가 같은 것으로 해석 것 :

<a href="#">Logout <?php echo $app->getUser() ?> </a> 

그래서 하나의 변종이있다.

실제로 캐시는 이보다 복잡하지만 개념은 같습니다.

app/cache/* 디렉토리에서 직접 확인할 수 있습니다.