Heroku: Pay to make your DevOps work go away
April 08, 2016

Heroku: Pay to make your DevOps work go away

Anonymous | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User

Overall Satisfaction with Heroku

We used Heroku on our engineering team to replace straight AWS EC2 instances for our web app. As we moved towards more service-oriented architecture, we stood up new services on Heroku quite easily. The idea was to reduce DevOps complexity as much as possible and avoid spending our time in that area, even if the infrastructure was slightly costlier.
  • When you have an app that closely follows the conventions of its framework (say, a conventional Rails app), Heroku makes it stupid simple to get a production website going.
  • Setting up sandboxes and test apps is simple. Because you can associate add-ons and databases to Heroku apps, you can copy an entire environment quite easily.
  • Heroku recently added the ability to auto-deploy from GitHub pending Continuous Integration results, make it easy to set up a Continuous Deployment flow through GitHub.
  • When you have elements outside of the norm, things can get harder. For example, our Rails app depended on a non-Gem dependency (Pandoc), and figuring out how to get Heroku to play nice with that was rather difficult. Along the same lines, doing something like a combination Node/Rails app requires quite a bit of finesse to get Heroku to do what you want.
  • Heroku is much pricier than something like EC2 for the amount of computing power. We had lots of problems with memory usage with our app. On EC2, we could have simply moved to larger instances, but on Heroku we had to go on a bit of a goose chase to find ways to reduce memory usage. It's necessary to assess scale and decide whether the reduced complexity is worth the cost. In my uses of Heroku, it has been.
  • You are at Heroku's mercy when they have an outage, and there's generally nobody to talk to.
  • Reduced time spent on DevOps concerns. We avoided hiring a full-time devops engineer thanks to Heroku.
  • Ability to quickly stand up multiple environments made it easier to test our software before it hits production.
You get much more machine for your money with EC2, but it requires much more time to set up and maintain, at least as it stood two years ago when we stopped using it. We spoke with Engine Yard when selecting Heroku, and they're good folks. They offer much more power and flexibility than Heroku, but it comes at the cost of moving you back towards the complexity of EC2. And if you want EY to manage that stuff for you, the costs get very high very quickly. Ultimately, we chose Heroku because we were a small engineering team that didn't want to spend time on DevOps.
Recommended for low-scale apps where the additional cost of the computing power you get on Heroku isn't an issue. Not recommended for extremely high-scale apps due to the cost, or if an app has non-standard setup, dependencies, or configuration.

Heroku Platform Feature Ratings

Platform management overhead
Platform access control
Development environment creation
Development environment replication
Issue monitoring and notification
Issue recovery
Upgrades and platform fixes