내 문제 : 나는 CakePHP의 APC 엔진 작동하는지 확인하기 위해 아파치 벤치 마크 테스트를 만드는 중이라서CakePHP의 : APC와 캐싱은 여전히 캐시 파일, 어떤 성능 이점을 생성
. 그러나 APC 엔진을 사용하도록 Cake의 캐싱 구성을 설정하면 일련 화 된 캐쉬 된 데이터가있는 캐쉬 파일이 tmp 폴더에 생성되어 파일 캐싱이 사용되고 있다고 생각하게됩니다.
또한 성능상의 이점도 없습니다. APC 및 파일 엔진을 사용하면 테스트 결과가 ~ 4 초입니다. 내 컨트롤러에서 일반 apc_add() 및 apc_fetch 함수를 하드 코딩하면 테스트 결과가 좋아집니다 : ~ 3.5 초.
그래서 APC가 작동하지만 Cake는 사용할 수 없습니다.
내 설정 :
bootstrap.php :
/*Cache::config('default', array(
'engine' => 'File',
'duration'=> '+999 days',
'prefix' => 'file_',
));*/
Cache::config('default', array(
'engine' => 'Apc',
'duration'=> '+999 days',
'prefix' => 'apc_',
));
컨트롤러 :
$catalogsLatest = Cache::read('catalogsLatest');
if(!$catalogsLatest){
$catalogsLatest = $this->Catalog->getCatalogs('latest', 5, array('Upload'));
Cache::write('catalogsLatest', $catalogsLatest);
}
php.ini 파일 :
[APC]
apc.enabled = 1
apc.enable_cli = 1
apc.max_file_size = 64M
내가 선택하면 캐시 :: 설정 () 캐시 전후의 컨트롤러에서 ecutuon, 나는이 결과를 얻는다 :
Array
(
[engine] => Apc
[path] => E:\wamp\www\cat\app\tmp\cache\
[prefix] => apc_
[lock] => 1
[serialize] =>
[isWindows] => 1
[mask] => 436
[duration] => 86313600
[probability] => 100
[groups] => Array
(
)
)
나는 CakePHP 2.2.4를 사용하고있다.
우선,이 설정은 bootstrap.php가 아니라 app/Config/core.php에 넣어야한다고 생각합니다. 분명히 구성이 인식되므로 문제가되지 않아야합니다. app/tmp 디렉토리에 작성된 캐시 파일은 CakePHP 자체가 작성한 캐시 파일 일 수 있습니다. 내용을 확인 했습니까? APC에 기록 된 내용이 있는지 확인하려면 APC 제어판을 사용하십시오. APC 제어판에는 APC에 포함되어있는 apc.php 파일을 통해 액세스 할 수 있습니다. 직접적인 대답은 아니지만 어쩌면 도움이 될 것입니다. – thaJeztah
@thaJeztah 핵심 캐시 만 core.php에 있습니다. 기본 캐시 설정과 다른 사용자 정의 설정은 bootstrap.php에 있습니다. – ADmad
정보를 주셔서 감사합니다. CakePHP 2.x에서 변경 되었습니까? 이것은 CakePHP 1.x에서 core.php에 있었는데, 그렇지 않습니까? – thaJeztah