Ben Zend_Cache kullanarak önbelleğe zaman Zend_Navigation şifreli alma sayfa hiyerarşisi ile sorun yaşıyorum.
Arka plan: Ben yaklaşık 50 sayfa ve bir veritabanında saklanan yaklaşık 300 ürün bulunmaktadır. Ben veritabanını sorgulamak ve Zend_Navigation beslemek için bir dizi oluşturmak.
Önbellek
$secondsBetweenRefreshes = APPLICATION_ENV == 'development' ? 30 : 300;
self::$cache = Zend_Cache::factory( 'Core', 'File',
array( 'automatic_serialization' => true,
'lifetime' => $secondsBetweenRefreshes ),
array( 'cache_dir' => CACHE_PATH . 'nav/' )
);
Bu çalışıyor
$struct = $cache->load('Zend_Navigation');
if (empty($struct))
{
$cache->save($struct = self::getSiteStructure() );
}
return new Zend_Navigation( $struct );
Bu karıştırılmış olur
$struct = $cache->load('Zend_Navigation');
if (empty($struct))
{
$cache->save($struct = new Zend_Navigation( self::getSiteStructure() );
}
return $struct;
Bu önbellekten çekilir değilse navigasyon çalışıyor. Evet, bariz çözüm Zend_Navigation önbelleğe değil, yapıcı iç temsilini oluşturmak için bir sürü iş yapar: kadar ben gibi pre-bilgisayarlı ile önbelleğe alma yapmak mantıklı ...
Ben hala şifreli sonuçlarında bir desen olup olmadığını görmek için çalışıyorum. Ağaçta herhangi bir ilmik / çevrimi vardır.