Mage_PageCache – Implement External Full Page Cache in Magento

cachefull-page-cachemagento-community

So in Community Edition there is an option under System->Configuration->System->External Full Page Cache Settings that appears to be offering a full page cache using Zend Cache.

Full page cache config

When you set these values you then get a new button on the cache page to clear this cache.

Cache page

So my question is this, after just discovering this recently. What the heck? Does it work? Why have this in CE and then remove it in EE and have a completely different module? Does anyone actually use it?

Note: this module is not in the EE release

Best Answer

After some digging around and some useful feedback on twitter I appear to have found some stuff out.

By default this is set-up to use a Zend Server feature Page Cache. It appears to be a feature almost completely set-up on the server with the only things in Magento being.

A clean function that calls. page_cache_remove_all_cached_contents

public function clean()
{
    if (extension_loaded('Zend Page Cache') && function_exists('page_cache_remove_all_cached_contents')) {
        page_cache_remove_all_cached_contents();
    }
}

And the enabling and disabling the extension from the admin section, but all this does is show/hide the button on the cache page.

As you can see from the clean function if uses the extension Zend Page Cache, but the class does implement the interface Mage_PageCache_Model_Control_Interface so it does seem like it has been built with the possibility to be used with other external caching systems and not just Zend server.

Note: I have never used this or Zend server