Have you heard of CloudFlare? If not, you should definitely check it out. It’s a content delivery network (CDN), uses by millions of websites, and best of all: it has a free plan!
A CDN can significantly speed up your website. Let’s say your site is hosted on a server sitting in Montreal (like mine). If somebody from Europe visits your site, they have to wait for the files to be sent from Montreal to Europe, via a transatlantic communications cable. This takes time, otherwise known as latency. The further away somebody is from your server’s physical location, the higher their latency (it’s not that simple, but you get the idea).
CDNs like CloudFlare and Akamai have data centers all over the world. They sit in front of your website, and serve up certain static content (such as images, CSS, and JS) via their data centers instead of yours. Most importantly, they serve the content up from the data center closest to a particular user. Their data centers are often closer to the user, and much faster. It’s also less load on your servers!
CloudFlare does this automatically. You just need to point your domain’s nameservers to CloudFlare. It’ll automatically cache static content (or whatever else you configure) and serve it up to your users, no extra work required! Your regular pages will still come from your server, proxied through CloudFlare. CloudFlare also provides you with a lot of other benefits, like DDOS protection. I’d highly recommend checking them out.
Since putting CloudFlare in front of most of my websites, I’ve noticed that they load significantly quicker, and my bandwidth has dropped significantly. It takes about 5-15 minutes to setup, depending on how comfortable you are updating DNS/NS records.
Another feature I find very useful is that you make DNS changes through CloudFlare. If you have CloudFlare enabled on your site, the DNS updates only need to propagage to CloudFlare servers as the rest of the world will continue to hit CloudFlare, not your servers directly. This means DNS updates are very quick (~5 minutes in my experience).