Monday, July 8, 2013

MaxCDN vs. Amazon CloudFront

MaxCDN and Amazon CloudFront are two popular choices in realm of CDN services. Both are affordable services, MaxCDN starting at just $39 per terabyte, while CloudFront is a little more expensive, but pay as you go with no minimum. Aside from price, the big question is which one performs better. After using both CDNs for some time on several WordPress sites, the following is my experience with each service.

In case you've never heard of a CDN, it stands for Content Delivery Network. It's basically a group of web servers located around the world that have a copy of your website and its files. When a visitor comes to your website, the CDN delivers your site files from the closest physical server to them. For example, if your website is hosted in California, a visitor from the UK has to travel halfway around the world to reach your site, which may make it seem slow and unresponsive to that visitor. However, when using a CDN, that same visitor might access a copy of your site in Europe or even in the UK, which makes your site load a lot faster and more responsive to that visitor.

[caption id="attachment_5623" align="alignright" width="223"]MaxCDN logo MaxCDN[/caption]

MaxCDN is company that specializes in CDNs. I first started using MaxCDN a few years ago, as the pricing was reasonable and the company's reputation was solid. MaxCDN was very easy to configure and install on our WordPress sites using the W3 Total Cache plugin.

After implementing MaxCDN on several sites I was extremely pleased with the results. Evaluations on speed test apps showed a major performance improvement while Google's PageSpeed grade was over 90 on each site. Plus, when I browsed my sites, the pages they just felt like they were loading a lot faster than before.

I had a very positive experience with MaxCDN but since some of my sites change ownership, I thought a pay-as-you-go bandwidth model might fit my needs better. I may go through periods of high bandwidth usage, but if a couple of my busy sites were acquired by another party, I might experience a period of low usage. I might stock up on bandwidth then suddenly not need it. Under MaxCDN's pricing model unused bandwidth could expire after a period of time.

Amazon Web Services logoI looked at Amazon CloudFront as an alternative. CloudFront is a CDN service from Amazon, one of many "cloud" computing service offerings billed as AWS (Amazon Web Services). Under Amazon's AWS model, I only pay for the bandwidth I use. If I need a lot of bandwidth I just get a bigger bill, less bandwidth equals smaller bill.

So I liked Amazon's pricing model and decided to set it up on some sites. Like MaxCDN, configuring CloudFront was easy. Setting up WordPress was easy too; I just had to edit a record in our hosting DNS and a couple more settings in W3 Total Cache. However, unlike MaxCDN, performance was a completely different story.

According to speed tests, there was a significant drop off in performance. For some sites, my Google PageSpeed grade really fell off, dropping down to the 60s. According to Google, the reason for the low grade was slow downloads from our CDN hosted files! I found the results to be very strange; I rechecked the configuration, made sure all Edge locations were selected.

Test results were inconsistent; sometimes I saw good grades, other times not. Whatever the explanation, if these are maintenance issues or traffic spikes at some of Amazon's datacenters, I'm just not comfortable with the irregularities. The reason you use a CDN is for performance, this was like buying high octane fuel but never knowing when it was going to kick in. Another than the inconsistencies, when scores were good they were not as high as with MaxCDN.

That's why I'm going exclusively with MaxCDN. I never had any issues with performance. If I end up buying more bandwidth than I need, then so be it. The peace of mind is worth it. Occasionally they run specials so I can get great deals on bandwidth to help with expenses. In fact, they are running one right now: 25% off.

There's also the advantage of customer service. I never had to call MaxCDN support in the past, but it's there if I need it. With Amazon web services, you're pretty much on your own.

Again, this was my experience running over a dozen WordPress websites with these two CDN services. My testing was not scientific, for me the stakes (cost of switching CDNs) were too low to justify spending a lot of time on testing. I tested enough times on each site to reach a point where I felt I needed to make a change.

Switching from CloudFront to MaxCDN was dead simple. Since I already had everything setup, I only had to change a few settings. I still have a few sites to switch over; I'll document the steps I take and post them as a follow up to this article.

No comments:

Post a Comment