I had a small argument…..no discussion with my hosting company the other day regarding the speed of my website, the basic gist of the conversation went like this:
Me: My website is slow, is it the server?
Them: No, it’s not the server it’s your website.
Me: Are you sure?
Them: Yep, we’re sure.
Now you may think that this would be the response of any host but it doesn’t make it any easier to accept. My particular host (HostPresto!) market themselves at the budget end of the hosting market, they even have “Cheap Web Hosting” in the main title of their homepage (although I suspect maybe this is for SEO reasons) but claim this doesn’t mean their service is “cheap”.
I may be being a little unfair here as the extract above is a very compacted version of the real conversation and they did explain their remarks, what follows is what they taught me in terms of factors that cause a website to load slowly.
My host’s first port of call was to direct me to a blog post on their website, which was a general post about optimizing your website to make it load quicker, giving several techniques, which they assured me could all be implemented on a shared hosting plan, even their cheaper/budget ones.
My host’s main point was that my website had over 15 calls for CSS and Javascript files, 2 or 3 were from external CDNs (Jquery, Boostrap etc) but the rest were all local files, all requests going to the same same domain name.
The blog post I mentioned earlier talks about “Combination, Minification and Compression”, which is basically making your externals files, such as Javascript, CSS etc load quicker by:
- Combination – Due to the way browsers and HTTP requests work, loading loads of smaller individual JavaScript/CSS files is slower than loading one larger JavaScript/CSS file, so it’s good practice to combine these smaller files into one larger file, meaning only one request for the web browser.
- Minification – This is basically removing all the line breaks/spaces etc from the JavaScript/css, making the physical file smaller and therefore quicker to download.
- Compression – This is not always possible to implement on shared, cheap web hosting packages (However on HostPresto! you can) as the server needs to have a certain module installed, namely the Apache “mod_deflate” module. The mod_deflate module simply compresses your JavaScript/css files much like the Windows Zip facility does, which your browser then unzips after it downloads them, again meaning a smaller file for download.
I implemented all three of these techniques on my own website in about 30-40 minutes during my lunch break at work, the difference? Well lets just say I had to eat a big slice of humble pie with regard to my host, as they were correct in which they said originally.
Lessons learned from this experience? Yes it is very easy to blame your web host when your website has issues, especially if you’re web hosting package is on the cheaper side of the market but it may not always be their fault.
Be sure to listen to any advise they may give you! I am not saying that every host is all knowing but they make a living out of serving websites and the very reputation depends on the quality of this process, so they’re bound to have a few ideas on how to make that process as fast as possible, both server side and client side.