Why I'm Leaving Heroku
I really was very comfortable with Heroku deploy system, but I was not comforable at all with some issues I found:
- It’s really great when you’re starting. Pricing is almost 0$… But
I’ve never been able to image, how much will it cost to have a decent
package for mongodb, redis and good bandwith on my webapp… Just looking
at their pricing, if your app become famous (we all wish that!) you’ll
have too pay more than you want. If you’re able to make your webapp
profitable enough, then go for it
- Its startup time. As my website don’t have any constant traffic, It’s startup time was been a little slow.
- For Parkuik,
I had to integrate with Google Places to get parkings and make it
easier for me and all of you to find new parkings (Don’t loose that URL
). What I found is that you have to include an IP to use Google Places
API key filter. Ok, there we go to heroku and…. Its IP is dynamic! You
have to pay for having an static IP. That is related to the other point,
and that was the point where I realize that Heroku was going to be more
expensive that It seemed the first time.
Anyway, taking into account all of this, I must say that Heroku is really really great, I use it for most of my webapps, and I’d recommend you to test it and use it (git deployment is awesome!!!!!). I just think that if you’re doing something for learning, testing or something not profitable, that will have some traffic (you have to know the limit where heroku starts to ask you for more), you need to build it at your own. You can save some $ and
What’s the alternative? I started using Linode. Yes, I know that you’ll have to configure all of the environment stuff and all of this kind of things that we, developers, don’t like (at least me!). One of the things I loved about taking this step is that I’ve learn some things about devops that I didn’t know before (seriously I’m so ridiculous about devops), and I’d recommend to use tools like Vagrant or Chef. They’ll make your life easier to make automatic deploys, make your development more predictable or just changing your production environment.
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)






Comments
Thomas Eichberger replied on Fri, 2013/01/25 - 2:00am
I would recommend Salt for software configuration management :-)
It is easy to learn, has a great API, and works wonderfully ...
Mitch Pronschinske replied on Fri, 2013/01/25 - 12:10pm
in response to:
Thomas Eichberger
I've also heard good things about Salt from some smart people.
Javier Manzano replied on Tue, 2013/01/29 - 1:25pm
in response to:
Mitch Pronschinske
Thank you! I'll try!
Iain Campbell replied on Wed, 2013/01/30 - 10:19am
The problem I've found with node.js on the cloud is that you're tied by what packages (and their versions) are available.
That's the reason that I hade to move my node.js app away from Heroku. It's now with another provider that supports a crucial package that Heroku were unable to.
Aside from that, it was great to work with and the simple workflow is fantastic.
At the same time, I don't feel that it's fair to criticise them on cost. They're offering a free dev (and even production) environment and those costs have to be covered. In terms of scaling it's difficult to argue that they're expensive - if you were in charge of devops and were sysadmin for something that gained good traction, I'm sure that you'd happily pay the fees for Heroku in place of managing the infrastructure yourself.
I've tried several cloud providers now and they all have their shortcomings. And they all start free but with a higher first-price-tier than traditional hosting offerings. That's the price you pay for exactly the benefit that it offers to developers.
Junio Mousull replied on Mon, 2013/04/15 - 10:45pm
2012-04-21T16:22:36+00:00 app[web.1]: E, [2012-04-21T16:22:36.683867 #119] ERROR -- : undefined method `sass' for #<rails::application::configuration:0x000000022894c8> (NoMethodError)2012-04-21T16:22:36+00:00 app[web.1]: /app/config/application.rb:70:in `<class:application>'2012-04-21T16:22:36+00:00 app[web.1]: /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.3/lib/rails/railtie/configuration.rb:85:in `method_missing'</class:application></rails::application::configuration:0x000000022894c8> Read in: roupas para revenda
Junio Mousull replied on Mon, 2013/04/15 - 10:48pm
in response to:
Junio Mousull
This error is common even. Update in Bloggou