Amazon EC2 Cloud Hosting Review

We’ve recently been caught up with a new client that insists upon moving their hosting from a local VPS host provider to the Amazon EC2 cloud solution in Sydney.  We did need an upgrade, since the $100/mth VPS host I initially set them up with (for around 20 websites) was now under-performing, running out of RAM and CPU resource on occasion, especially when under bot attack.

My own recommendation to resolve all the issues and future-proof them required doubling server resources –  Meaning costs could climb to as high as $300/mth for a quick high performance dedicated or cloud-based server here in Auckland. Costs and specs for these systems vary a lot, with quotes ranging from $220 to $650/month, incl software.

EC2 Instances – Where to start?

Enter Amazon EC2 ‘cloud hosting’, which came highly recommended by my clients local IT provider, claiming it a more cost-effective option than mine. It had incredible features and immense scalability. Initially their sales pitch was on the immediate savings. A standard ‘medium’ instance of around $50/mth would be ‘ample’ they were told. Within hours of migrating a single test website to AWS EC2 revealed couldn’t even handle 12 concurrent users pounding the site. Barely suitable for a single website, let alone 20+.

When I looked at the amazon documentation, this ‘medium instance’ provided the equivalent to a single-core cpu and 2 ‘compute units’. Amazon say one compute unit is roughly equal to the performance of an old 1GHz Xeon processor of 2007 vintage! Most laptops in use today have way more power than this. How anyone would think this entry level EC2 offering would be enough to run 20+ websites is beyond me…. Obviously we had eager IT salespeople involved, not tertiary qualified engineers with computing know-how…

Anyway, doubling the resources to the next amazon ‘large instance’ would fix this they said, being 2 cpus or equivalent 4x 2007 vintage processors. A week of them fiddling and adding in new database, plus loads of caching options eventually brought it up to an acceptable speed. But the bill now well over $200/mth.

However some of my tests still indicated that under certain loads, this lowly EC2 configuration could still collapse at around 50 users, which was a worry considering that they’d planned to have 50+ sites running on this host this year and this specific load could explode.

Amazon EC2 – How Good Does it Get?

I was quietly panicking as the server and loading data told me things were still far from ideal here. But unfortunately, I was now well out of the decision loop with my client swallowing the amazon sales pitch hook, line and sinker. My recommendations were set aside, perhaps because I had burnt my own bridges, since I was the guy that couldn’t get my $100/mth VPS host to do the job. I had to swallow my pride and just watch things unfold.

However as an engineer, I still privately wanted to see how good amazon could be if setup correctly, to do the specific job in hand, especially now I had several months of client traffic data and knew the mountain that I needed to climb.

I quickly setup my own amazon account and trial host server on a Saturday morning. Within 3 hours had it all running well with a large 1GB site and a big 40MB database, being another clients big website I migrated over for the weekend. It included WHM/cpanel on top of a better optimised operating system and apache server config.

I then used various load testing tools to see at what point it would break. With 4 cpu (8 compute units) running, server response times were 0.2-2.5 seconds which is often deemed ‘good enough’ performance for a webhost today. Caching tools halved these figures which was nice, but caching can’t always be used for all sites or pages and it then falls back to having pure server grunt. This core performance I thought was still somewhat lethargic when compared against a fast local webserver, as used for this site.

Does the cost really matter?

However what was the cost to get something on amazon that worked, with acceptable response and load performance? For this project it needed a budget of up to $600/mth or $400/mth if on a longer term contract. Some quick traffic projections indicated this Amazon EC2 would likely have to be ‘scaled up’ to twice this cost within 12 mths…. Yikes!

At this stage I was quickly coming to the conclusion that the entire amazon EC2 hosting thing was not as quite as good as the salespeople said it was. Yes, the systems architecture itself is indeed amazing, but it also delivered below-average performance for the money spent. This performance was erratic too with simple download speeds varying from a lowly 150kb to a more acceptable 3,500kb/s throughout the week. This was way more variation than I’d seen on any other host. The fancy website caching when employed certainly helped here, but merely masked the erratic infrastructure that lay beneath.

visacrdBut Amazon always have a solution if you have the visa card handy. Their higher-priced (approx $25/day) hosting configurations can include guaranteed bandwidth and I/O resources to keep things lively, as you’d get with a good dedicated ($12/day) web server in Auckland. Remember too clients are often coerced into trialing amazon on a $1.70/day promise, that can quickly climb to ten times this…

Yes, amazon EC2 is a nice system with really advanced management features which geeks just love. But it’s also an expensive, risky option if the goal is to have consistent, high performance website hosting. And monthly costs, both direct and indirect, can quickly spiral out of control to achieve the performance needed. And the way it is configured, moving away from Amazon is quite difficult.

Update Nov 2013 – Industry Reviews tell a similar story

Similar results have been obtained by others. There’s new monitoring of the cloud providers – Cloudspectator. Amazon was again shown to have the worst performance – Around a quarter of the industry leaders Windows Azure and HP Cloud. Amazons value was also poor, unless you signed up for their long term contracts. Rackspace have a similar strategy of locking customers in like this. But in response to the competition, Amazon are now coming out with new ‘deals’ every month to give the perception of value…  chart1

LargeThere’s also Serverbear tests, which shows how bad Amazon EC2 can get. Their ‘large’ instance giving a lowly Unixbench score of 662, being in the bottom 3% of those reviewed. And all for $140/mth excluding support! (N.B. A dedicated webserver of similar monthly cost could provide 5x this performance).

This just tells me that decisions around hosting websites in the cloud are increasingly being made by those with limited technical know-how, attracted by all the sales hype Amazon push out. Junior IT people can fall into this grouping too. Just because you can setup a local PC or LAN, doesn’t make you an expert in cloud computing.

There’s no due diligence being done by experts before signing up. I guess some would say that’s just good marketing by Amazon. Gullibility is the human condition as is the desire for managers to ‘take control’ and utilise these DIY systems.

Ref also: Case Study – Amazon vs Dedicated Hosting and Amazon, the good and the bad

Kevin Trye, Developer
Dated 20th July 2013

Speak Your Mind