Lab of Team Net World

How to Speed Up Your Magento Store – Performance Optimization Tips

Magento Sets the pinnacle among ecommerce platforms and globally accepted by developers and eCommerce owners. Despite its popularity magento is quite heavy CMS and run slowly if right configuration and settings are not applied. This is because these settings are not quite obvious, infest missed by even experienced web developers who are unfamiliar with magento.

There are several methods that can be applied by one to enhance Magento performance and other PHP based CMS systems. These methods start from settings within Magento and goes all the way to server/hosting settings.

Here we will discuss few methods that are relatively the easiest ones and increase the Magento page-load speed significantly.

1)Reduce the size of file transfer between browser & web server

A useful approach to escalating magento-store performance significantly is by lessening the size of the file transfer between browser and web server.

Minify JavaScript and CSS:

Compressing the JavaScript and CSS can set aside many bytes of data and reduces downloading, parsing and execution time. There are many online tools are available to minify JavaScript and CSS such as jscompress.com, minifyjavascript.com csscompressor.com, minifycss.com.

Optimize Images by resizing them:

Select a suitable image file format and compress the images using image compressor to lessen the bandwidth between browser and web server. There are several image compression tools offered online such as; imageoptimizer.net, hjpeg-optimizer.com, JPEGMini.com etc

Enable GZIP compression

You can curb the number of bytes sent over the network considerably by using GZIP compression that cut down the size of HTML, CSS, and JavaScript files sent over the network by up to 70% and reduces download time terrifically.

2) Lessen the Number of HTTP Requests

Studies have revealed that the standard concentration duration of adults is eight seconds long. That is why load time is considered as most significant factor in the success of an online store Reduce the of HTTP requests as much as possible. There are more than a few methods available which will assist you to reduce HTTP requests and uphold a high-quality web page at the same time. - Combine Javascript and Combine CSS files: By merging the CSS and JavaScript, the HTTP round trip time can be reduced. It is inbuilt feature of magento.

Go to System > Configuration > Advanced > Developer- Set Javascript settings and CSS Settings as Yes

w645

Combine images using CSS sprites:

With the help of CSS sprites, number of images can be brought down by combining them into as less files as possible. It will reduce the server requests and will bring down the number of bytes downloaded by a webpage.

Expires Headers or Cache control headers

By using the expire headers or cache control headers, the number of HTTP requests and its size can be reduced to faster page load.

Enable Apache KeepAlives

While using shared hosting web servers and browser may close connections so it is significant to enable the Apache KeepAlives to enhance the communication between server and browser.

Reduce the number of DOM elements

High numbers of DOM elements makes the page more bewildered and increases the page size. Consequently, Increment in download time and slower access to JavaScript makes the webpage load slower.

Examine the alternative to bring down the DOM elements. There are many free tools available like DOMMonster, DOMinspector to inspect your web page and offer suggestions for enhancement.

The screen shots given below were taken using the DOM Monster tool. The first is an instance of a healthy web page with a less number of DOM elements where as second image shows high number of Dom elements.

Example 1

w645a

Example 2

enter image description here

YSlow – YSlow fetch all data about the page and generates a grade for each rule, which produces the overall grade. Yslow offer great help to design complete layout with superb load speed. Grids.css can help you to design responsive web page where as fonts.css and reset.css assists you to strip away the browser’s default formatting”.

enter image description here

Place CSS calls at top of the page and JS calls at the bottom

Always place CSS calls at top of the page and Java Scripts calls at the bottom as it assist to boost the progressive rendering in several browsers, thus increase Page load speed.

3)Implement Required Caching Mechanisms

Enable all magento caching mechanism Enable all of the accessible cache from the magento admin panel (System –> Cache Management).

enter image description here

Implement opcode cache mechanism

PHP is an interpreted language that means each time when page requested, Server has to read several file in a single request and compile them in to machine language (opcode). Magento has numerous included files in a single request that means good amount of server load can be curbed through opcode cache.

If you are using PHP version 5.5 and above, these versions come with built-in “opcode caches”, that offers faster PHP execution through opcode caching and site optimization.

Available opcode caches for magento are (APC, accelerator, xcache, etc)

Enable Memcache mechanism

“Memcached is a high-performance, distributed memory object caching system, generic in nature, but originally intended for use in speeding up dynamic web applications by alleviating database load.” –

This caching mechanism assists to get better Magento’s heavy hits on your database by caching data away from it. Magento supports Memcached but it is not enabled by default. You have to enable Memcached via its configuration file, start the service, and restart Apache.

Implement Redis cache

There are problems while implementing TwoLevels Cache Backend (i.e. to use Memcache together with the database). Redis is an appropriate alternative to resolve this problem. “Redis is an Open Source, BSD licensed, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.”

It is measured as one of the superior and most efficient caching mechanisms for magento.

Given below editions support Redis session and back end caching:

  • Enterprise Edition (EE) 1.13 and later
  • Community Edition (CE) 1.8

Put into operation “Varnish caching”

Varnish is a HTTP accelerator; it plays a role of load balancer. It caches the created HTML from a web page and serves it to a user sooner than making a call to the Magento Framework. Hence, it reduces the load time and decreases the response time extremely well.

Enable MySQL Query Caching

MySQL has its own “query cache”, which is quite supportive to optimize the MySQL performance. It helps in generating dynamic pages and content while considerably enhancing the performance.

MySQL stores the query text and its results in its cache and when the same query is fired, results are made available quickly.

Use a Content Delivery Network (CDN)

CDN helps to trim down server load, by serving the static content like images, CSS files or JavaScript files through a network of servers intimately located to your customers. A CDN can truly perk up the user experience on the web site.

4) Optimize Performance Through Magento Panel

Keep logging turn off

Magento logging mechanism is turned ON, It can simply be turned off from the admin panel.

Go to System > Configuration > Advanced > Mage Log > Set Disable and Save

Turn Compilation On

enter image description here

This option let you to compile all files of a Magento installation in order to generate a single include path to enhance performance”.

To enable, Go to “System” > “Tools” > “Compilation” and click on the “Run Compilation Process” button.

To use this tool, directory includes and the file includes/config.php both must be writable.

Enable Flat Categories and Products

enter image description here

As each product or category information is stored in multiple tables, each time a product or category page is requested, a large join query is prepared to collect all the pieces of information and form a web page.

Enabling the Flat Catalog generates these pages by using a lone DB query from a sole DB table. This considerably reduces the bottleneck performance of loading a product/category page.

System > Configuration >Catelog Panel > Catalogue > Frontend > you will see two options “Use Flat Catalog Product” and “Use Flat Catalog Category”. Set both to Yes.

Comments are closed.

Idc1998.com
This domain has recently been listed in the marketplace. Please click here to inquire.