Joomla Performance Tips – Part 1

How to speed up your Joomla website

Joomla Hosting

This part of our performance tips series looks at Joomla based websites and what you can do to get the fastest possible loading times.

So why are loading times important? Recent research by Forrester Research on behalf of Akamai has identified two seconds as the new threshold for acceptable web page response times. With so much choice available on the internet, users just won’t put up with a slow loading page. They’ll hit the back button and go elsewhere. You’ve not only lost a visitor but your brand has been damaged.

Measure, Adjust and Test

Obviously there are complicated and expensive tools available that will test your site from many different locations and produce detailed reports, but free tools like YSlow and Firebug will show you load time reports in your browser. In this article we’ll be looking at Page Speed, a recently released extension for Firefox by Google.

  1. Install Firebug
  2. Download Page Speed
  3. Review the User Guide

Establish a base line speed for a number of pages on your site – try to pick a variety of styles including the home page, and any other popular landing pages. Make a note of the page loading times of some of your competitors websites, so you can benchmark yourself.

If you’re not happy with the results, now it’s time to start making changes!

Joomla Tweaks

1 – Enable Cache

Cache Settings

Enable Joomla’s core content cache.  From the Administrator login, go to  Global Configuration->Cache and Enable. The standard option is File. Depending on your host’s server configuration there may be other options here. The built in Joomla system caches objects. Objects are things such as function calls, modules, content articles, etc. This speeds up the generation for all pages and all visitors. Where it will not help (much) is for pages that require a lot of dynamic content to be generated every time they are loaded.

2 – Enable Gzip Compression

Enable Compression

With this option enabled, the server compresses the page content created by Joomla before sending it to the browser in real-time. The browser then decompresses the content and displays it. The option is enabled in Global Configuration -> Server -> GZIP Page Compression. It’s important to note that not all servers support gzip compression – ask your host, or in Joomla look in Help -> System info. Most web sites gzip their HTML documents, but as a typical web page will have many non-HTML components such as images, CSS and Javascript. It’s therefore worthwhile to compress any text response including XML and JSON. Image and PDF files should not be gzipped because they are already compressed. More tips on compressing CSS and Javascript can be found here.

3 – Choose your template carefully

There are thousands of templates made for Joomla, and a lot of them look stunning, but many have some severe performance penalties.  The problem is that some templates can use upwards of 70 separate images to display the page. Each image requires a separate HTTP request from the browser to the server and has to be downloaded. When testing, try your site under the default Joomla template and you’ll be amazed at the difference. Once you’ve chosen or designed your template, use the Page Speed extension to see if any images used by the template can be optimised further.

4 – Check your Extensions

The Joomla extensions directory contains components that can do just about anything and it’s fair to say most Joomla sites will use a couple at least. However it’s also a fact that some extensions are very inefficient and can slow your site dramatically. Fortunately you simply test if a component is causing problems by temporarily unpublishing it from your site and retesting in Firebug with Page Speed. If you do find a problem, you might be able to find another component that does the same thing.

5 – Optimise your Database

Joomla makes a lot of demands on the backend MySQL server. Regular optimization of your database can help keep things running smoothly. To optimize the tables go into phpMyAdmin (database administration tool), select all tables, and click “optimize”.  To read more about optimizing the database tables,  read this section from MySQL.

6 – Consider upgrading

It may be that your site has now been optimised as well as it can be, and although the page load speeds have improved, you want to take it to the next level. With 2020Media’s virtual server and dedicated server hosting plans, there is a smooth upgrade path. With complete control over the entire server environment, dedicated memory and CPU you can improve your Joomla performance over anything that would ever be possible on a shared hosting account.

Summary

In this article we’ve looked at why the performance of your website is important, how to test load times and  be systematic about testing, and finally looked at some important Joomla performance tips. One thing to remember is that trying these tips is reversible – Some can hurt performance, but most of the time they does help.  The only way to find out is to try it. If in doubt make a backup of your database before making each change.

Notes

The Joomla!® name is used under a limited license from Open Source Matters in the United States and other countries. 2020Media.com is not affiliated with or endorsed by Open Source Matters or the Joomla! Project.

Migrating Existing Websites

Migrating websites can be easy

One of the services that makes 2020Media special is performing migrations of existing websites from other web hosts. We’ll help with anything from a static HTML site to complex database driven CMS websites. Website migrations are not always needed – sometimes the customer has a full copy of their website and it’s straightforward for them to upload it and get going straight away.

But it’s not unusual for a customer to find themselves with a problem – their developer is no longer around or puts barriers up to the move, or the existing web host does everything in their power to hold their customer to ransom.

Often customers have been told by everyone they’ve spoken to that their web site can only be hosted or maintained by their current provider, and if they wish to move, they’ll have to start again from scratch. Put simply, this is not true in the majority of cases. Talk to 2020Media about your move, and we’ll give you free advice on what is and isn’t possible.

Joomla User Group

Another meeting of the Joomla London User Group took place yesterday in London. The user group is now 2 years old and is attended by about 10 people each monthly meeting.

A useful tip mentioned this meeting was about extending Joomla through the many add-ons available. The central place for find Joomla add-ons is the JED (Joomla Extensions Directory). This directory lists both commercial and free extensions. There are often several extenstions that tackle the same need so it can be hard to know which would be best. We advise that you check the views and reviews show in JED very carefully – if there only a few this can mean that the extension is not particularly popular and may lead to the developer abandoning it.  It’s also worth looking at the ‘last updated’ date next to ‘Views’. Not all extensions need updates of course, but if an add-on has a recent update it’s a sign of an active project.

Joomla Extensions Directory

Some of the user group had been experimenting with Joomla 1.6, the tenth beta of which had just been released. They said there is still a way to go, and there a certain issues that remain unresolved. Clearly the final release isn’t going to appear just yet.

The user group meets on the 3rd Tuesday of each month and you can find out more on their website.

Finally, Joomla!Day 2010 is taking place in Ipswitch, Suffolk from Saturday, 30th October to Sunday, 31st October 2010 inclusive.

Joomla hosting requires a certain environment on the server and 2020Media’s Joomla hosting is designed to deliver exactly the right specification for all Joomla websites.

CiviCRM Hosting

2020Media specializes in CiviCRM hosting on Linux servers with a combination of very reliable service and excellent customer support.

CiviCRM Seminar, Kings Cross

We recently attended a CiviCRM seminar held at Miller Technology in Kings Cross, London. The seminar was well attended, mostly by representatives of smaller charities and not-for-profit groups who were evaluating CiviCRM for their organisations. We think the view at the end of the morning was that CiviCRM could meet their requirements as it is very well specified for the NFP sector and is a mature and well supported software package.

CiviCRM can be hosted as part of Joomla or Drupal web content management systems. Which one is used will probably come down to the developers preference, but it’s worth noting that Drupal has a more flexible permissions system. So if you were thinking of restricting access to elements of CiviCRM to certains users (for example your events team only access the CiviCRM events menu), then Drupal is an easier way of doing this.

2020Media’s hosting supports all features of CiviCRM. Our servers are fast, very reliable and our support team is extremely professional. We furthermore take great efforts to keep your sensitive data secure. If you’d like to talk to us about your next CiviCRM project, please get in touch with 2020Media.

WordPress Plugins

Free content management system WordPress can be extended very quickly and easily by installing plugins. These can do just about anything thanks to the way WordPress’s framework is designed, but here’s a list of the top 10 most popular free plugins and what they do.

  1. Akismet: Keep your comments free of spam.
  2. All in One SEO Pack: Transforms your WordPress site into a search engine magnet.
  3. Google XML Sitemaps: You want Google to index your site right? You need this plugin.
  4. Contact Form 7: Adds a very configurable contact form to your site.
  5. NextGEN Gallery: A image gallery option with optional Flash slideshow
  6. WordPress.com Stats: Get an insight into your visitors
  7. AddToAny: Share/Bookmark/Email Button: The web is now social. Is your website?
  8. Google Analyticator: Get an insight into your visitors using Google’s free service.
  9. WP-PageNavi: A more advanced paging navigation for sites with lots of pages.
  10. WPtouch iPhone Theme: automatically transforms your WordPress blog into an iPhone application-style theme
plugins menu
Plugins

This list was compiled by Vladimir Prelovac, and one of the criteria was that the plugin must have been updated in the last year to be included – so you know these are being supported. Any of the above plugins can be installed from within your WordPress site, just search for it’s name in the Plugins section.

2020Media offers free installation of WordPress on any of its hosting plans, and our team is delighted to talk to users of WordPress about any aspect of its use.