How to Speed Up Your Joomla Website

Think of Joomla! as a framework over which one can develop, integrate components and launch professional feature rich web sites. Lots of benefits are associated with Joomla, Joomla’s flexible, easy to useand gets a huge community making thousands of extensions available for the software.Only imagination can restrict the use of Joomla. But many complain about Joomla's slowness. Why is Joomla actually?

You will also want to read:

Basic Documentation on Joomla Website Administration

 Basic Virtuemart Configuration Tutorial

 Fixing Problems: Notices, Warnings and Errors on Your Joomla Website

 Good Optimization Will Boost The Speed of Your Joomla Website

 How Secure is Your Joomla Website 

Joomla is not actually slow, but you need to tweak some settings and use the available inbuilt options to boost Joomla performance. If Joomla was to be optimized by default, then it would be difficult for customizations and much more difficult to make functional changes. Its up to the Joomla user to get the maximum out of joomla by tweaking settings and optimizing Joomla framework. Default Joomla has lot of potential to be optimized for speed and performance.

A few conclusions had been drawn from Joomla testings using different versions:

1. Speed and performance of Joomla is largely dependent on the choice of template, followed by addons components / modules / plugins. It is recommended you uninstall or deactivate all extensions not in use.

2. Number of CSS images, Javascripts (size) marks the final blow to Joomla performance.

3. Activation of inbuilt Gzip and Cache system does speed up the Joomla site.

4. Cleaning up of CSS codes can result in a highly boosted Joomla performance in terms of decreased http requests and total page size.
    
5. Compression and minification of CSS / JS files, similarly compression and optimization of pics / images is the key to speed up default Joomla.

Also read:

 How to Copy a Joomla Module and Install on Another Website

 How to Fix The Joomla White Screen of Death

 How to Revert Back to a Previous Version of Joomla

A Comprehensive Guide to Joomla Article Creation and Editing

 How to manually update a Joomla website
 
Please note that optimization , compression or minification doesn't go well with all the sites (depends upon hosting environment and site encoding).


    Optimize CSS / JS files to remove the white spaces or comments (which decreases the size of css / js files by 10-40%).
    Use of the commercial components or other Joomla extensions such as page cache, Query cache, cssjscompress plugin. (which further reduces the loading time and http requests).
    Combine the CSS / JS files in one (which brings down the http requests).

Never forget that:

    Each site environment and setup is different and might need different approaches to optimize.
    Some components such as (page cache, Query cache, cssjscompress) might even break the site. That’s why you see the forums filled with queries, questions etc… Always backup your joomla website before you begin. If you miss this step, God help you.
    For the ease of calculation, remember that each module or image increase the http request by 1. For example, if you have 20 pics on a page, that means additional 20 http requests.

Also read:

How to move a Joomla website from localhost to a live server and secure it

 How to set an article in a Joomla website to publish on a later date

 Joomla Extensions Manager Tutorial

 Joomla Manual Installation Tutorial

Now lets attempt to understand the basics and concept of speeding up joomla performance.

 
How and where to analyze Joomla performance?


    Go to http://analyze.websiteoptimization.com/ > put in your url > hit analyze > put the capctha code > wait for few secs > analyze > save the screenshot or make a pdf of it.
    There are other online analyzers also. But we all use http://analyze.websiteoptimization.com/ . why? Because everyone uses it :P

Which parameters are important ?

    HTTP requests
    Total size
    Number of HTML / CSS images
    Number of CSS / JS (scripts) files.
    Size of CSS / JS / HTML images.
    Check for duplicate JS files.
    Check for NOT FOUND items.


The above parameters will give a idea of what is wrong and what needs to be corrected. One can overlook the “Red Highlights” at the bottom of the result page. As its not possible to meet the stringent limits and most of them will go back to Yellow or Green once you have optimized your site.

Also read:

Joomla Menu Manager Tutorial

 Joomla User Manager Tutorial

 My Joomla Website Displays a Blank Page, What Should I do

 Why The Progressive Caching in Joomla Should Be Avoided

First things first - What’s available in joomla?

 
Gzip

Joomla uses PHP to create the HTML pages that make up your website. These pages can be compressed using Gzip Compression. Most web servers support Gzip Compression, which can shrink your site's pages by 70% to 90%. This will result in reduced bandwidth and faster page loads for your visitors. Remember, Gzip Compression will use more of your server's processing power.

To enable Gzip Compression on your Joomla web site, go to your Global Configuration and go to the Server tab. Set GZIP Page Compression to Yes. To test your site after enabling Gzip check http://www.gidnetwork.com/tools/gzip-test.php and enter your website's URL. The test will tell you if your pages are Gzipped or not.

Cache (system cache)

Cache works great and should be turned on, either from Global Configuration and another way is to enable the "System Cache" Plugin from Plugin Manager. Sometimes enabling Cache does not go well with or special characters used. In some templates, you must set "development mode" in template parameters to "NO" before the cache system will work.

What can be avoided to boost joomla performance?


Number of modules.

The less, the better. Do not overload your joomla with extra modules, because each module add to http request, may even load its own JS or CSS file.

Components :
If you have a choice between components, pick up the efficient one. Uninstall the components not in use.
Plugins :

Evaluate the benefits before installing any plugin. Disable or remove the unwanted plugins.

Example : Many people use JCE editor and during installation they also install the "JCE Utilities Plugin".

Effect of JCE Utilities Plugin on Joomla :

    HTTP requests increased by 11.
    Loading Time increased by 50 Secs (@56 K.
    3 additional Javascripts and 2 additional CSS files.
    Increase in total page size by 225396 bytes.

Do one really need cool effects by sacrifing site performance and speed?

Real time monitoring (live users – stats)

Turn off all Joomla Stats and just use Google Analytics to keep track of your users. Statistics are generated by using lots of queries to database, All the third party statsitics module / components are heavy on your joomla. Google analytics gives you what you really want to track your users and other relevant data.

Manual tweaking for a faster Joomla


1.    Template

    Always try to have a lighter and simpler template. Put the templates through the analyzer before settling for one.
    If changing template is no longer a option, then cut down on template based features, such as users tools, specialized login modules, unpublish such modules and if possible remove their reference from css also.

 
2.    CSS optimization

    Take a backup of your css files and then run them through online optimizer http://www.cssoptimiser.com/index.php, It reduces the file size by 10-30 % and removes the comments, white space between the css code. Remember, after this step the css file will no longer be human readable, so always backup your copy.

 
3.    Java Scripts optimization

    After saving a copy of your JS file, run the file through JS compressor at http://javascriptcompressor.com/. Not all the JS scripts like to be compressed. but no harm in trying this.

 
4.    HTML Images

    Never ever ask the browser to scale a big picture for you. Use JCE editor to make autothumbs for you or upload your thumbnails manually. Resizing while downloading the picture means that the browser will download the full picture and then resize it for you.
    For pictures, compress them, use Irfan View, or in photoshop use the option "save for web". In any unoptimized thumbnail, it is possible to take away atleast 10KB each, just by opening and saving for web in photoshop.

 
5.    CSS Images.

    These are the images loaded by your template and these images make up your template. If you have a simple template, the number of css images would be less.
    If your template offers many options, such as color, style, module style, drop down menus option.  - then you need to manually edit the css files or your template's index..php to load only the required scripts (menu styles) or images of the color scheme opted etc.... By default, half of the css images can be disabled or references removed without any serious effect on the layout or appearance of your template.

6. Clean Up Joomla

    Remove unwanted / unused components, modules , plugins.
    Check for leftover database tables of old components or plugins and drop those tables.
    Optimize and repair the database tables. Use PhpMyAdmin for this.
    If the analyzer report states any "Not Found" query. search and remove that query. Not Founds or 404 errors have bad effect on speed. The server/ browser is left thinking about how to deal with this missing item.

 
7. Combining CSS or JS files to reduce HTTP requests and file size.

Many options available for undertaking this task, a bit complicated.

    Minify - A Joomla independent Script - That works from the root directory of Joomla.
    Com_minify - A Joomla component that wrap the engine minify.

 
8. Using CSS sprites to reduce HTTP requests and picture sizes.



2. What can be avoided to boost joomla performance?

1. Number of modules.
The lesser, the better. Do not overload your joomla with extra modules, because each module add to http request and may even load its own JS or CSS file.

2. Components :
If you have a choice between components, pick up the efficient one and uninstall the components you are not using.

3. Plugins :
Evaluate the benefits before installing any plugin. Disable or remove the unwanted plugins.

Example : Many people use JCE editor and during installation they also install the "JCE Utilities Plugin".

4. Effect of JCE Utilities Plugin on Joomla :

    HTTP requests increased by 11.
    Loading Time increased by 50 Secs (@56 K.
    3 additional Javascripts and 2 additional CSS files.
    Increase in total page size by 225396 bytes.

5.Do one really need cool effects by sacrifing site performance and speed?
 
6. Turn off all Joomla Stats and just use Google Analytics to keep track of your users. Statistics are generated by using lots of queries to database, All the third party statsitics module / components are heavy on your joomla. Google analytics gives you what you really want to track your users and other relevant data.

3. How to setup CDN for Joomla

Content Delivery Networks (CDN) have great benefits for optimizing your Joomla websites and for Google higher ranking due to website increased speed. You can use a CDN component/plugin to integrate a Content Delivery Network (CDN) in Joomla.

Incorporating a CDN with your website gives you several benefits, including the following:

    Faster Page Loads - Since most of your files will be served from a much closer location to your end-users, the speed in which your page loads will be greatly increased.
    Reduced Server Load - Since most of your files are no longer served by your own host, your server will be freed up to perform the basic tasks required of it.
    Handle More Visitors - Because of the improvements just mentioned and other factors, your website will be able to handle the strain of a much larger user base that it could otherwise.
    Higher SEO Rankings - Caused by the increase in performance to your site, something Google recently claimed effects SEO rankings.

Integrating your website and a CDN (like MaxCDN or Amazon CloudFront) with this plug-in is incredibly easy! This tutorial gives you the simple process involved with this integration.

Download the “CDN For Joomla!” plugin from download page.
Log into your Joomla Administrator Panel, hover over “Extensions” and click “Extension Manager.” Next to the “Upload Package File” box, click “Browse”, select the downloaded plugin file, and click “Upload & Install.”
After the installation is complete, go back to “Extensions”, click “Plugin Manager”, then find and click on “System – CDN for Joomla!” Click on it to setup the plugin.

Leave the “Site Root” value alone, type your CDN URL (e.g. http://foo.bar.netdna-cdn.com) into “CDN Domain”, then click “Save & Close.”

All done! You are now officially using our CDN service. You can check if your URLs are being rewritten to CDN URLs by loading the page and viewing the source code of the page.
  • 46 Users Found This Useful
Was this answer helpful?

Related Articles

How to manually update a Joomla website

Traditionally, Joomla website update had involved three methods: writing files directly, updating...

How to move a Joomla website from localhost to a live server and secure it

We have received numerous questions regarding how to upload a Joomla website from localhost to a...

Joomla Extensions Manager Tutorial

The Joomla Extensions manager in version 3x, 2.5 and the previous versions 1.7 and 1.6 are...

Fixing Problems: Notices, Warnings and Errors on Your Joomla Website

Websites will inevitably have problems. Sometimes, they can be as frustrating as a White Screen...

How Secure is Your Joomla Website

Joomla is the third most popular content management systems(CMS) used by webmasters and designers...

Powered by WHMCompleteSolution