Great tool but cloud computing is a commodity
March 14, 2017

Great tool but cloud computing is a commodity

Valeri Karpov | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User

Overall Satisfaction with Amazon Elastic Compute Cloud (EC2)

I've used EC2 for numerous use cases:
* Hosting Node.js applications of varying complexity, from borderline static sites (http://plugins.mongoosejs.io/) to more sophisticated apps (http://sixplus.com/)
* Hosting a Go-based CI tool that used the EC2 API to spawn build workers
* Hosting MongoDB instances
EC2 is my go-to tool for any sort of production server application. It's much more cost effective than in-house hardware at the scale I've been working at, primarily because EC2 instances have solid internet connections and don't change the IP of instances while they're running. However, I've started using Azure more as cloud computing is becoming a commodity and Azure gave us a better deal.

  • Point-and-click spawning of production-ready instances running whichever OS you prefer.
  • Solid API for more advanced use cases. Instead of having in-house Windows build machines you can just spawn EC2 instances via API to build your project on demand.
  • AMIs make it easy to set up a machine once and make copies of it once you need to scale.
  • The UI is cumbersome and confusing
  • The API is usually reliable but hard to rely on at scale - spawning a machine via API sometimes just hangs
  • Online support is borderline non-existent. If something goes wrong, you're probably on your own.
  • At previous businesses we wouldn't have been able to run our infrastructure reliably without EC2. No more hour-long downtimes because Verizon decided to change our server's IP address without warning.
  • On the CI project, EC2 allowed us to iterate quickly and scale the CI tool on demand, without having the massive upfront cost of setting up our own server farm.
  • EC2 also allows us to easily spawn development machines when we need to connect mobile apps to a development backend, letting us iterate more quickly with partners.
I currently use GitHub pages and Azure for projects, in addition to EC2. I use GitHub pages for my blog because it's free and convenient, and because my blog is a static site (HTML and client-side JS only) so there's no need for me to pay for an EC2 instance to host a web server. At my current startup we use Azure because they offered us a very generous free tier and their support is excellent. However, I still use EC2 for applications where the app requires an actual backend and I'm the only engineer, because I'm most familiar with EC2.
EC2 is an excellent alternative to in-house hardware for small to medium sized businesses for hosting web servers and spawning build systems for compiling for different operating systems. It's been powering my production apps for the last 5 years or so, ever since I gave up on the idea of having my business running off of desktops in my dorm room. However, cloud computing is rapidly becoming a commodity: my current company runs mostly on Azure, my blog is a static site hosted on GitHub pages, and both of these decisions were made simply because Microsoft and GitHub offered more cost-effective solutions for my use case. EC2 is great, but not sufficiently better than DigitalOcean, Azure, etc. to justify paying extra in my experience.