2013-02-22 3 views
7

Насколько я понимаю, разница между «Flush Magento Cache» и «Flush Cache Storage» в Magento (example). Я пытаюсь работать над заданием cron, которое время от времени будет очищать кеш-память.Magento «Хранение флеш-кэша»

Я предполагаю, что эта кнопка не просто удаляет содержимое var/cache /, но я не могу найти надежный ресурс, который говорит, что он делает. Я использую APC, а также все встроенные функции кеширования Magento.

Возможно ли запустить скрипт «Fluch Cache Storage» из сценария?

ответ

10

В app/code/core/Mage/Adminhtml/controllers/CacheController.php вы можете видеть, что flushAllAction() (действие, которое вызывается при нажатии кнопки Flush Cache Storage).

Эта функция содержит следующее:

/** 
* Flush cache storage 
*/ 
public function flushAllAction() 
{ 
    Mage::dispatchEvent('adminhtml_cache_flush_all'); 
    Mage::app()->getCacheInstance()->flush(); 
    $this->_getSession()->addSuccess(Mage::helper('adminhtml')->__("The cache storage has been flushed.")); 
    $this->_redirect('*/*'); 
} 

Для вызова этого в вашем собственном файле, вы можете сделать следующее.

require_once('app/Mage.php'); 
Mage::app()->getCacheInstance()->flush(); 

Теперь вы можете запустить свой php-файл, используя cronjob.

3

here вы можете найти хорошее объяснение относительно различия между «Хранилищем флеш-памяти» и «Кэш-память Flush Magento».

Я согласен, что вы должны создать CRON ЗАДАЧА (если чистый кэш действительно необходимо) (how to) с помощью метода:

public function flushAllAction() 
{ 
    // Additional code if necessary 
    Mage::app()->getCacheInstance()->flush(); 
    // Additional code if necessary 
} 

Если вам нужна дополнительная помощь, не стесняйтесь спрашивать.

Смежные вопросы