At Extendware we specialize in Magento performance extensions and as a result we have learned some things about speeding up Magento along the way. These are 10 easy steps to make Magento faster. The list is not comprehensive of course, but it is applicable to most Magento stores.
Use Extendware Page Cache
The Magento Full Page Cache extension by Extendware will reduce load on the database and server load and improve First Byte Time. The result is a much faster and more stable store. For most Magento stores this speed tip will provide the single fastest improvement in Magento speed.
Minify Javascript / CSS / HTML
Once the First Byte Time is super fast you will want to ensure the Download Time is fast. This is another component of Magento page load. To do this you will want to use the Minify JS / CSS extension which will reduce the size of javascript / css and HTML pages. In addition, it can improve browser caching, do pre-compression and a lot more.
Optimize Images
Very few stores are optimizing images which is quite important considering that images change on every page load. This means that the browser cache is not effectively used. So, though a small improvement on a per-page basis it produces a large speed benefit in aggregate. The easiest way to optimize images is with the Image Optimizatoin extension.
Enable Flat Catalog in Magento
The bottleneck of Magento is almost always the database. To improve the speed of database reads you should use enable Flat Catalog in magento under System -> Configuration -> Catalog -> Frontend. This will reduce the number of database joins done when showing products and as a result reduce MySQL query complexity. The end result is more speed.
Optimize MySQL Configuration
Many stores run MySQL configurations that are not optimized for Magento. Magento use a lot of indexes and a lot of joins. As a result, it will need adequate memory for both of these activities.
Enable Magento Cache
Magento has an internal cache for its configuration, layouts, and blocks. Some stores forget to enable this, so ensure that this is enabled in System -> Cache Management.
Remove 3rd Party Extensions
If you are using extensions that were not created by Extendware, then you will want to disable them. About 50% of all store performance issues are caused by poorly created extensions. When possible you will want to use Extendware extensions as they created with performance in mind.
Enable System Compilation
Magento can combine the PHP files of your store, so that it uses less disk access. This is called System Compilation and can be important if you do not use an opcode cache or you are not on SSD disks. To enable this you can go to System -> Tools -> Compilation.
Review your Hosting Provider
Many hosting companies are oversold and do not offer good performance for the money. In addition, some are just not compatible with Magento. For example, Siteground is a poor choice for Magento hosting as its limitations are too restrictive to run a well-run Magento store. Choosing a better host will help your business reach the next level.
Use a PHP OpCode Cache
A PHP OpCode Cache such as APC can speed up the loading of the PHP files which results in an improved Magento Store speed. This is especially important if you are not using hosting with SSD disks.