Yii CFileCache가 값을 얻을 수 없는 문제를 해결하는 방법은 무엇입니까? 이 글은 주로 Yii CFileCache가 가치를 얻지 못하는 이유에 대한 분석을 소개합니다. 필요한 친구들이 참고하면 좋습니다. 그것이 모두에게 도움이 되기를 바랍니다.
구성 파일에
‘cache'=>array( ‘class'=>'system.caching.CFileCache', ),
를 구성하고 컨트롤러에
return array( array( ‘COutputCache+pro', ‘duration'=>86400, ‘varyByParam'=>array(‘id'), ),
를 설정한 다음 데이터베이스 'schemaCachingDuration'=>3600을 열었습니다.
‘schemaCachingDuration'=>3600,
初次使用是有缓存文件的 而且发现 确实加快不少访问速度
但时间一长 在某个时间段 也许是10分钟后 我就发现 runtime/cache 下面的缓存文件突然就没了
不清楚是什么原因 跟踪了好长时间才发现这个问题
另外还发现缓存目录里面还有 文件夹 什么0a d6 63 3a命名的 不知道这是起什么作用的
在线等缓存文件突然没了的原因?
缓存文件在D盘 数据空间是很大的
一、yii的缓冲需要在main.php里面配置,
/****************/ ‘cache' => array ( ‘class' => ‘system.caching.CFileCache' )
配置完成以后只需在控制器里面….
Yii::app ()->cache->set($key,$value,$expire); Yii::app ()->cache->get($key);
二、配置多种缓存
main.php 的配置
‘cache' => array ( ‘class' => ‘system.caching.CFileCache' ), ‘dbcache' => array ( ‘class' => ‘system.caching.CDbCache' )
控制器只需用相应的cacheid调用就好
如:Yii::app ()->dbcache
그런데 시간이 지나서, 아마도 일정 시간, 어쩌면 10분이 지나면 런타임/캐시 아래의 캐시 파일이 갑자기 사라지는 걸 발견했어요
모르겠어요 추적하는데 시간이 오래 걸렸습니다. 이 문제를 발견했습니다 게다가 캐시 디렉터리에 0a d6 63 3a라는 폴더가 있다는 것도 발견했습니다. 이유는. 왜 온라인 대기 중 캐시 파일이 갑자기 없어졌나요?캐시 파일이 D드라이브 데이터에 들어있어요 공간이 많아요1. main.php에서 Yii의 버퍼를 설정해야 합니다,
public function filters() { return array ( array ( ‘COutputCache', ‘duration' => 600, ‘ varyByParam' => array(‘id') ) ); }
…some HTML content… <?php if($this—>beginCache($key))?> …content to be cached… <?php $this—>endCache(); ?> …other HTML content…
2. 여러 캐시 구성
main .php 구성rrreee
컨트롤러는 해당 캐시 ID로만 호출하면 됩니다. 예:Yii::app ()->dbcache
셋, 페이지 버퍼링은 전체를 캐시하는 것입니다. 페이지는 정적입니다.
main.php 구성은 여전히 동일합니다컨트롤러: 다음을 수행할 수 있습니다. COutputCache 클래스를 컨트롤러 클래스의 동작 필터로 사용합니다. rrreeeCOutputCache는 데이터를 캐싱할 때 자동으로 키 이름을 생성하는 전략으로 사용됩니다. 사용할 수 있는 목록은 다음과 같습니다.
varyByRoute: 이 옵션을 true로 설정하면 특정 요청의 라우팅 부분이 별도 식별자의 일부로 사용되어 캐시 데이터를 생성합니다. 따라서 요청 컨트롤러와 acion의 조합을 사용하여 캐시된 콘텐츠를 구별할 수 있습니다. varyBySession: 이 옵션을 true로 설정하면 고유한 세션 ID가 캐시의 콘텐츠를 구별하는 데 사용됩니다. 각 사용자의 세션은 다르지만 캐시를 제공하는 데 사용될 수 있습니다. varyByParam: 앞서 언급했듯이 입력 GET의 매개변수는 캐시 콘텐츠를 구별하는 데 사용됩니다.
varyByExpression: 이 옵션에 대한 PHP 표현식을 설정하면 해당 표현식의 결과를 사용하여 캐시된 콘텐츠를 구별할 수 있습니다. 또한 COutputCache의 기본 캐시 ID는 캐시입니다.
4. 조각 캐시 🎜🎜🎜조각 캐시는 페이지의 일부를 캐시하는 데 사용됩니다. 뷰 스크립트에서 조각 캐싱을 사용할 수 있습니다. CController::beginCache() 및 CController::endCache() 메서드를 사용하여 이를 수행합니다. 🎜rrreee🎜🎜관련 권장 사항: 🎜🎜🎜🎜🎜🎜Yii2는 Xunsou를 통합하여 효율적인 중국어 단어 분할 검색을 달성합니다.🎜🎜🎜🎜🎜🎜Yiii가 잘못된 코드를 필터링하는 방법🎜🎜🎜🎜🎜🎜Join and Joinwith Yii2의 다중 테이블 연관 쿼리 방법을 사용하세요 🎜🎜🎜위 내용은 Yii CFileCache가 값을 얻을 수 없는 문제 해결의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!