2016-09-14 75 views
1

我有一个Magento自定义缓存问题。 我观察方法,它由cron启动,我写值到缓存:Magento 1.9自定义缓存问题

Mage::app()->saveCache($visitorsCount, 'cached_google_analytics_visitors_count', [], $twoDaysInSeconds); 

值表被成功救,我能在这里从缓存中提取出来。和文件

mage---4ae_CACHED_GOOGLE_ANALYTICS_VISITORS_COUNT

mage---internal-metadatas---4ae_CACHED_GOOGLE_ANALYTICS_VISITORS_COUNT

是这里有两个。

现在是时候在我的块来提取缓存值,所以我这样做是这样的:

$visitorsCount = Mage::app()->loadCache('cached_google_analytics_visitors_count'); 

但它返回我的不实。我调查过,原因是Zend_Cache_Backend_File类中的metadatasArray中没有CACHED_GOOGLE_ANALYTICS_VISITORS_COUNT,但存在元数据文件。 更多的是,当我写入缓存值时,metadatasArray有这个值。

希望你的帮助。 问候,尼古拉

回答

0

我已经得到了错误的原因: 的cron是从另一个用户比网络服务器上运行,所以PHP-proccess没有权限读取与metadatas文件。我已经从www-data用户启动了cron并且它现在可以正常工作