We all know it is good to have your site load fast for two big reasons: we don’t want people to leave our sites before they get there and Google incorporates page-load time into our site’s search rankings. I recently wrote a post about the effect that image size on your site loading times since learning to resize and optimize images is one of the first steps to improving site loading performance. Now we will go on to more technical methods, Caching and Content Delivery Networks that can improve speed of loading as much as 350%.
When you first visit a website, all of the content on that website (images, text, etc.) have to be loaded onto your computer from a web server in order to display that content. What caching does, is after you visit a website for the first time and all of the content is loaded from a web server, the static content is then saved on your hard drive in your cache, so when you visit the website for a 2nd or 3rd time your browser is able load the static content from your computer’s hard drive which is much faster than loading it again from a distant web server.
The whole concept of caching can be rather mysterious to us non-geeks. It is difficult to understand and even more so to explain. I found a pretty good metaphor by Zack Tollman from a talk on this subject at a WordCamp. Zach describes the process of caching by asking us to think about the process of gathering the ingredients (images, text, etc.) we need to prepare a meal (load a website).
If we aren’t using any caching, we would make a separate trip to the store for each ingredient we need for each meal we prepare, but that would be such a slow and tedious process we probably would not cook very often. The better alternative is to go to the store and buy all of the ingredients we will need for the week and store them in a place where we can easily grab them off the shelf or the refrigerator when needed.
The process of buying groceries and storing them in our kitchen is similar to caching objects in web development in that you are moving items necessary to have a webpage display from a place of difficult access (a web server) to a place where it can be accessed faster (the computer that is accessing the website’s hard drive).
The W3TC plugin works to cache your site’s static pages and database queries so they are easily and quickly uploaded to your site’s visitors. Caching reduces the load time of your site so your visitors don’t have to wait for each of these things to load from scratch.
The W3TC is a very powerful plugin with many configuration options. If you are a beginner you will need to take your time and get some thorough advice on how to set it up. A fellow who goes by the name of Zemalf has a very thorough, free 45 page step by step tutorial which will show you what settings to choose on every screen. Be aware that if you set it up wrong you could risk getting your site suspended.
Content Delivery Networks (CDN)
In addition to or instead of using an on site caching plugin, you can add a CDN to cache your static, non-interactive content on multiple servers across the globe so that users in San Francisco don’t have to wait as long as they would for the data to be delivered from a server that is 3,000 miles from them on the East coast. WPBeginner has an infographic that shows how this works.
There are two widely used CDN companies, CloudFlare and MaxCDN which allow you to keep your hosting wherever it is, but then cache your data on their global server networks all over the world. Normally your site is served up from one server in one static location, no matter where it is being accessed from. CDN’s will serve up your web site from their closet server in their global network.
CloudFlare started off a few years back as a security program using their intermediary server networks as a protective layer between your host and possible malicious attacks. It worked by them receiving, identifying and thwarting malicious or spamming requests for your data before they got to your actual web site at your host. People who started using this service found that, serendipitously, their sites were running 40% faster. With CloudFlare they got security and speed. If you don’t have a secure site with SSL, you can use the free version of CloudFlare. Otherwise you will need to sign up for the Pro version which is $14.95 if your site is hosted with Bluehost or another host that offers it as an add-on, or $20.00 if you go directly through CloudFlare. This is a real bargain when you consider the increase in user satisfaction by having your site load quickly as well as the Google love you will receive for having a fast site.
MaxCDN is a Content Delivery Network which was started with the sole purpose to increase the performance of websites. WPBeginner recommends MaxCDN reporting that it can increase performance by up to 350%. They also report that MaxCDN also serves to lessen the likelihood of a site crashing if they get unexpected traffic spikes; and increasing the loading speed MaxCDN improves the user experience of the site and can increase its SEO.
MaxCDN is a paid service with entry pricing of $9.00 – $39.00 per month. WP Beginner offers their readers a 25% off coupon for new MaxCDN accounts.
Other Option: Managed WordPress Hosting
Regardless of which product (or combination of products) you choose and whether you have a small e-commerce site or a full-fledged enterprise wide on-line business, using a CDN service will boost your site’s performance, offer a layer of security, and improve your and your visitors’ experience of your site.
But, if this all seems too much technical mechanization for you or your client to deal with, another great option for improving the performance of your site is outsourcing these details by using a web host who handles these things for your site as part of the service they provide.
If you want increased performance but don’t want to worry about whether you have set everything up correctly, you can move your site to a managed WordPress hosting company like WPEngine who can provide caching and content delivery systems as a part of their hosting service. This is more expensive than regular shared hosting, but may be worth it to speed up your site without you having to configure plugins that you don’t understand.