Whilst Joomla is among the most flexible and robust CMS, it can suffer within the overall performance region. There are some common items that can be done to assist velocity your website up. Whilst the greatest performance could be noticed on a complete devoted server operating Lighttpd (It's Much faster than Apache) plus a local MySQL data source, acceptable overall performance levels could be achieved with nearly any hosting package. For some administrators, upgrading to some dedicated server might not be practical...

Optimise your Template

We'll begin off this discussion with one of the most common (and most detrimental) problems that I've seen with Joomla (and any other site for that matter). There exist literally thousands of templates created specifically for Joomla, and most of them look very good, but most have some severe overall performance penalties. The problem is some from the templates out there use upwards of 70 separate pictures to display the page. Every image generates a new request (which adds the network latency, generally among .1 seconds to as significantly as 1 second) and has to become downloaded. The issue is exacerbated when those pictures are not as small (in terms of information size) as possible, and when they're not optimized. There exists an excellent website that may help you decide what template optimizations need to become done, make sure to run your site through it right after ever major modify (The Website Analyzer).

Use Gzip

Encoding your pages with Gzip is an 90% answer.!!!. If your server's processor is quicker than your bandwidth (again, 90% of the time), than enabling Gzip compression will really velocity up your website. I say that because gzipping the pages does need some CPU horsepower. Attempt enabling Gzip and see in case your site loads any quicker (especially on highly loaded servers). If it doesn't, or you get CPU warnings from your host, disable Gzip. It can hurt you, but most of the time it does help. The only way to find out is to attempt it.

All Joomla Components aren't Great Components

Should you appear with the Joomla Extension directory, you'll find a part to accomplish every thing you could want (for the most part). The issue is that some of those elements are Really inefficient and wind up slowing your site lower dramatically. If you want an simple way to identify slow components that you may be utilizing, set up my page caching component, but do not enable caching (let it record the page load time for every URL). Then right after a week or so, go through the list that was generated, and find the sluggish URLS. Those components will show you which ones are slower than the rest. If you are able to, delete the ones which are truly sluggish, and attempt another product.

Turn off Statistics!

They use a ton of SQL queries to get carried out what they do. They are not really worth it at all! If you want good stats, use Google Analytics to track your visitors. Stay away from 3pd stats elements. They do generate nice stats, but at a huge performance penalty. The only statistic really worth keeping may be the search queries (from the Joomla config). If you have access towards the webserver, you can also disable logging statistics from the server conclusion as well (this process is much more effective, and only will truly help if your server is heavily loaded).

Mambots are Really Effective, but also Sluggish.!!!.

Take a take a look at what mambots you're operating. In case you are not using any of them, then get rid of them (don't just disable them, uninstall them). Every time you load a web page, mambots are known as as significantly as 20 to 30 times. If the code isn't 100% effective and needed, it is a waste of power. This doesn't mean that should you use the mambot, you should still maintain it. You will find some mambots that are notorious for slowing a site lower. 1 of those may be the AllVideos Plugin. It's an excellent answer, but uses lots of inquiries to complete.

SEF isn't Server Helpful


Among the greatest items you are able to do to some website, is make the URL's appear more much better. The Joomla core does an acceptable job, but there are a handful of 3pd elements that make truly nice URLs. The problem with these components, is they are not very overall performance helpful (they use a ton of queries). I prefer OpenSEF to any from the other people (But it is no longer actively developed) as it seems to be an excellent mix of energy, flexibility and overall performance. Keep in mind, that using SEF URLs is a tradeoff. An excellent URL will look much better to some search engine, and to end users, but it hurts the load time. Believe carefully prior to deciding to enable SEF URLs. 1 point you are able to do, is periodically optimize the database by purging unpublished and invalid URLs from the OpenSEF database (an choice within the admin section of OpenSEF).

Enable Caching as Significantly as you possibly can

If you can, enable Joomla's core content cache. It does speed things up when viewing content and modules (mambots do not require to be processed each time the page is loaded). Should you truly wish to speed items up for unregistered people, take a look at my Page Caching part which caches entire pages. This really is probably the best overall performance gain you can discover you unregistered people (the majority of users for 95% of websites). This doesn't mean that you simply can overlook concerning the rest of those optimizations, simply because the registered people will nevertheless see the uncached website.

Discover the Bad Queries

From the Joomla config, allow debugging. Then view your website, and examine out the database inquiries being executed. You want this number to be as low as you possibly can (under 30 preferably, but below 50 or so ought to suffice). Start by looking at the recurring inquiries (ones which are executed over and over). You Should have the ability to tell what extension is generating the inquiries by the table they take a look at (for example, "Select * from jos_opensef_config" is from OpenSEF). There are two ways of dealing with queries that operate frequently. You are able to either disable that extension, or contact a developer to optimize the extension (either the developer from the extension, or a freelance developer like me).

Best to staty away from Bridges


A well-liked technique of incorporating functionality into Joomla is via a bridge. This involves modifying the Joomla core and also the core of an additional plan (such as SMF, or Gallery2) to provide the functionality of each. On the surface, this looks excellent simply because the other plan is frequently significantly much more refined and has much more functions than any "true" Joomla extensions accessible, but underneath is really a various story. The issue is that both are independent techniques, which indicates each 1 wants to load its own "core" (including frameworks, user management, and more). This has a massive overall performance penalty, because you're basically loading two pages for each web page loaded. The slight functionality loss of going from SMF to something like Fireboard is nicely really worth the overall performance gains.

Optimize your Database

The 1 thing that's put below the most strain in most Joomla installations is the Data source server. There are two primary ways to optimize the database. Optimize the tables, and optimize the schema. The distinction, is the tables are how the furniture really shop the data, and the schema is how they are supposed to shop the data. The schema only wants to be optimized when, whilst the tables require to be optimized regularly (as information is added, edited, and deleted). To optimize the schema, please refer to the article Improving Joomla's Queries. To optimize the furniture go into phpMyAdmin, choose all tables, and click "optimize". To read more about optimizing the database tables, read this section from MySQL.

Finally, Backup and Monitor Your Server

You Must make regular backups, and move them off your production server. Whilst you may be considering "What does this have to accomplish with performance?", it has Every thing to accomplish with overall performance. With out present backups, how will you have the ability to restore the site to a recognized configuration if an set up, update or tweak goes bad? A sudden sluggish down in the site might be from a hack attempt that injected malicious code into your core (unlikely, but possible). What happens in case your server decides to bite the bullet? The greatest method to make the backups is with an automated script (so that you simply can't "forget"). There are great types all more than the internet (and one's most likely included in your control panel if you've one), just google it. Keep in mind, prior to performing anything to some website, BACKUP First!

Things to consider

Some things you should consider when choosing a hosting for your website:

  • Will there be much traffic on the site?
  • Will you have a community on your site? Then you should go for hosting with high CPU.
  • Which country are most of your visitors from? For most speed, get a server that is located in this country.

 

Best in test

4th year in a row, Hostgator wins the yearly Joomla Hosting Best in Test award. One of the big reasons for Hostingators success is that they offer Joomla sites everything you need, you pretty much have total freedom in all areas.

Unlimited bandwitdh, unlimited disk space, unlimited domains, unlimited live support etc. Click here to read more about them.