0
내가 일하는 곳에서는 Zend Framework vs 1을 꽤 오랫동안 사용하여 페이지를 캐싱했습니다. 우리는 Zend Framework 2로 업데이트하려고 노력하고 있으며, ttl로 페이지를 캐시하는 방법을 잘 모르겠습니다.젠드 프레임 워크 2 캐싱
use Zend\Cache\PatternFactory;
$cache = Zend\Cache\PatternFactory::factory('capture', array(
'public_dir' => '/Users/mmaruri/Sites/Test/newsfeed',
'index_filename' => 'index.php'
));
$requesturl = $_SERVER['REQUEST_URI'];
//$cache->setOptions(new Zend\Cache\Pattern\PatternOptions(['storage' => 'filesystem', 'ttl' => 3600]));
//create an id based on the uri
$cache_identifier = md5($requesturl);
$isCached = $cache->has($cache_identifier);
$test = $cache->getOptions($cache_identifier);
if($isCached)
{
$t = $cache->get($cache_identifier);
header('Status: 200', true, 200);
echo $t;
return;
}
else
{
$cache->start($cache_identifier);
}
저장소 어댑터와 캡처 캐시 패턴의 차이점은 확실하지 않습니다. 어떤 도움을 주시면 감사하겠습니다!
전체 페이지를 캐시하고 싶습니다. capture-cache 패턴을 사용하면 start 메소드를 통해이를 수행 할 수 있습니다. 어느 스토리지 어댑터에서도 비슷한 방법을 찾을 수 없습니다. – user2832792
스토리지 어댑터는 전체 페이지를 저장하는 것이 아니며 개체를 저장하기위한 것입니다. 따라서 캡처 캐시를 사용하려면 두 가지 옵션이 있습니다. 1. 패턴을 사용하여 TTL 구현을 작성합니다. 2. 대안으로 https://github.com/bramstroker/zf2-fullpage-cache를 사용하면 현재 캡처 - 캐시 솔루션보다 복잡하지만 더 다양한 캐싱을 허용합니다. – Dymen1