2016-09-14 4 views
1

У меня проблема с пользовательским кэшем Magento. У меня есть метод наблюдателя, который запускает на хрон, я записать значение в кэше:Проблема с настраиваемым кэшем 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'); 

Но это возвращает меня ложь. Я исследовал, что причина в том, что в метаданных Array в классе Zend_Cache_Backend_File не существует CACHED_GOOGLE_ANALYTICS_VISITORS_COUNT, но файл метаданных существует. Более того, metadatasArray имеет это значение, когда я пишу значение в кеш.

Надеюсь, ваша помощь. С уважением, Николай

ответ

0

я получил причину ошибки: хрон убегали от другого пользователя, чем веб-сервер, так что PHP-proccess не имеет разрешения на чтение файла с метаданными. Я запустил cron из пользователя www-data и теперь работает правильно