Magento“Flush Cache Storage”

时间:2013-02-22 15:58:57

标签: magento caching cron storage flush

我理解Magento(example)中“Flush Magento Cache”和“Flush Cache Storage”之间的区别。我正在尝试处理将不时刷新缓存存储的cron作业。

我假设这个按钮不只是删除var / cache /的内容,但我找不到一个可以说明它的功能的可靠资源。我正在使用APC以及所有内置的Magento缓存功能。

是否可以从脚本运行等效的“Fluch Cache Storage”按钮?

2 个答案:

答案 0 :(得分: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();

现在,您可以使用cronjob运行您的php文件。

答案 1 :(得分:3)

here你可以找到关于“Flush Cache Storage”和“Flush Magento Cache”之间差异的很好的解释。

我同意您应该使用方法创建CRON TASK(如果确实需要干净缓存)(how to):

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

如果您需要进一步的帮助,请不要犹豫。