Magento is a powerful, full-feature ecommerce platform, but the power it provides demands outrageous server resources. Full-page caching of Magento pages is a must for all customers who want their site to load quickly. Full-page caching stores the output of the generated HTML page, and when the next visitor comes to that page, the cached version of that page is shown instead of reprocessing everything. The advantage? Incredible speed gains with corresponding server resource reduction. The disadvantage? If you require dynamic content, caching can get a little more complex to prevent out-of-date material from being shown to the customer. Magento Enterprise Solutions comes stocked with a very robust full page cache system, but we recently have been employing a full-page cache add-on in our clients' Community Edition Magento installations as well.
There are a few Magento add-ons for full-page caching:
Each has received very positive reviews, and is worth investigating prior to committing to a full page cache system for your site.
We have been using Extendware's Full Page Cache Pro module, for these reasons and benefits:
- Incremental product pricing, so you may only buy the features you actually need
- Simple installation and configuration
- Great customer support
The installation process is a fairly standard Magento installation. Put the files in the right place, then log out of the admin panel, clear the var/cache directory, and log back in.
With only the primary cache installed, configuration is a snap and requires little more than selecting —Enabled— and saving the configuration. For front-end dynamic content, hole-punching, or pages you want to exclude from caching entirely, this requires the secondary cache add-on and a bit more configuration. There is no complex Memcached, Redis, or APC to install and configure (although those can be used in tandem with full-page caching).
The results are measurable and immediate.
Before caching installation:
After caching installation:
Our Magento installation was taking more than 10 seconds to process the initial request! With the Extendware add-on, this initial request was reduced down to a value that wasn't able to be measured by the browser plugin, and the overall processing time was cut in half.