BNR Website and Digital Marketing Blog

BNR Branding Solutions is based in Huntersville, N.C., and is a full-service web development and digital marketing company.

Tuesday, 18 February 2014 23:45

Top 3 ways to speed up your Joomla! Site

Written by 
Rate this item
(4 votes)
Top 3 ways to speed up your Joomla! Site

One of the common questions we see regularly in various Joomla communities is how to speed up a slow Joomla site. It's a reasonable request on the surface, with Google putting more emphasis on user experience, the speed of your site is more important than ever.

Often site owners think that their site is HUGE and that must be part of the problem. Generally, that is not the case. MySQL is capable of handling tables with many hundreds of thousands of records without much effort so the chances that your site is slow because you have thousands of items is pretty unlikely. There are other much more likely culprits that you should look at before you start messing with your Joomla database.

Problem #1: Hosting Environment

Probably the most common issue making any site slow is the hosting service. If you are on a shared server, there are a few things you should understand. First, your site is one of many on the server. Probably hundreds if not thousands of sites are usually put on a single shared server. The budget hosting companies are notorious for having many thousands of clients on a single server.

Second, shared servers are not configured for optimal performance. They are configured to be easy to admininster and to be as secure as possible to protect the many clients on a single server. Since it would be nearly impossible for a hosting company to police the quality of the code and the version of software users are installing, they tend to lock down as much as possible to help mitigate the security risk of having many users.

Solution: Quality Hosting

We recommend hosting your site with a reputable provider that specializes in Joomla. RochenHost.com, CloudAccess.net, and Liquidweb.com are pretty safe bets. These companies have experience with Joomla and their servers are configured to run Joomla and other CMSs more efficiently.

If you are making money with your website or your site is mission critical, then you should definitely be looking at a Managed Virtual Server or Dedicated Server to insure your site is not hampered by other users on a server. This is the only way to guarantee that there won't be a user jamming up server resources with bad scripts or that the server simply won't be overloaded due to the number of users. Cloud hosting is also a good solution as you can purchase an much or a little hosting power as needed for your site to run fast. It is generally very easy to allocate more resources should you suddenly need more as well.

Problem #2: Site overhead

Site overhead refers to the actual amount of data that the server sends to the browser when a user views your site. This includes the actual HTML on the page, all of the linked CSS and Javascript files, images and other multimedia. With the speed of modern broadband and even 3G and 4G cellular networks, it is an easy item to overlook because the site is fast on YOUR fast broadband.

Solution: Optimize website assets

The obvious starting point is to properly compress your images. Part of this is also selecting the correct format for the image while still maintaining quality. It's also important that the images are sized to the dimensions that are being used. Sizing images with CSS, HTML, or Javascript does not change the amount of data that the server is transferring.

Next, you can generally get some savings by minifying your CSS and Javascript. This is the process of taking out all of the unnecessary spaces and line breaks out of those files. They are virtually useless to a human once this is done, but you can save quite a bit by doing it. Be sure to keep original copies in case you need to make changes later.

Another easy way to reduce the amount of data transfer is to use gzip compression. Gzip is a combination of your web server using gzip compression on the files it sends to the user's browser. The browser then decompresses the files once they are downloaded, saving some of the data overhead of uncompressed files. All modern browsers support gzip so there's really no reason not to enable it on your site.

Some hosting providers offer servers that have mod_pagespeed installed. This is an apache module developed by Google that optimizes your site on the fly so you don't have to. Among other things, PageSpeed with resize and compress images, minify CSS and Javascript, and use gzip compression.

Problem #3: Network Latency

Many people don't realize the impact network latency can make on the time it takes to download a page. Latency is slowdowns in the data flow from the server to the browser. When a user requests a web page, there are actually many requests taking place based on what is on the page requested. It is not unusual for a single page to have 100 or more requests. There are many factors that can affect the data flow, many of which are out of a site owner's control. One factor that can be controlled however is routing latency. When information is being transmitted from one internet router to the next, each hop adds a little bit if latency. Also, the type of connection, be it fiber, copper, or coax will also affect the amount of latency. The longer the distance from the user and the more hops the data has to make, the more latency the user will experience. When a page on a site requires over 100 requests, even 50 ms per request can add up to a noticeable amount of time for the user.

Solution: Content Distribution Networks

Content distribution networks (CDN) allow a user to receive all of part of the website they are requesting to be served to them by a server that is physically closer to them. Rather than a user from Thailand waiting for a site in London to make the long journey, the site would be served from a web server in Bangkok, reducing the amount of latency the user would experience. There are several Joomla extensions that help site owners implement CDN technology from Amazon Cloudfront, MaxCDN, and other networks. This is particularly important if your site serves an international audience.

Out of the box, a basic Joomla install will be pretty fast. If yours is not, then these are 3 surefire ways to help increase the speed of your site.

BNR Branding Support

Brent Friar is the owner and chief web developer for BNR Branding Solutions. His development experience dates back to 1994 when he was a founding partner of Internextion Web Development in Orange County, CA.

Go To Top