Live data from Hacker News

Heroku Isn't for Idiots

rdegges.com

31–40 of 63 posts

Re: Heroku Isn't for Idiots

#31

Heroku is Just Unix At its core, Heroku is just a simple unix platform; specifically, Ubuntu 10.04 LTS. I just threw up a little

I saw someone else have a bad reaction to this statement, but I might be to blame for this. See:

http://news.ycombinator.com/item?id=4062983

But let me try to frame it more carefully: at the time (and maybe still) a lot of providers expect you to use special APIs endemic to their platform, and you can't get the real-deal implementation or a drop-in replacement if you want to model the production environment more closely or move off the platform. Even if you get the real-deal implementation, running it may be infeasibly hairy.

Heroku very assiduously tries to avoid this, and there is a downside: we compromise with the problems in existing software that people like to use as-is, and to fix those problems we have to somehow get that software fixed, too.

Re: Heroku Isn't for Idiots

#32
post #5

I love this post, and hope it keeps coming up. Some day, developers will learn that even though they could do it as well as Heroku, given enough time and effort, it's just a lot cheaper not to! This comes up all the time with my company. We make hosted Continous Integration ( https://circleci.com ), and often hear "can't I just set up Jenkins?". And the answer is the same, "you could, but ...". Run it on EC2, where y…

I tried out Circle CI... I have some feedback if you want. First the UI could use some work, but it was really awesome seeing it pull down a Flask app and knowing to activate venv and install pip. Also, not having an option to delete your account is a bit scary, seeing as I'm part of an organization on github and not comfortable with you having access to that code.

Cool, thanks for trying! The UI could definitely use work, and we're working on it.

There is an option to delete your account. One option is to contact us (I know, that's not great, but we delete same day). The other option is to rip out Circle's authentication via GitHub, if you're worried about us doing it properly.

Re: Heroku Isn't for Idiots

#33
post #12

Earlier quoted context omitted.

> The persistence scaling story for Heroku seems pretty questionable to me. Agree. Those people who tell horror stories about Heroku/EC2, usually give solid numbers, i.e. this was how much I spent, this is how much I save by moving away, and our response time is now X% faster. On the other hand, we have article like this that shows pretty graph for a web app serving 16.2 requests per minute, and make bold claims that…

Here's my pretty graph for serving ~500,000 requests per minute on Heroku: https://api.playtomic.com/load.html Savings aren't exclusively because of Heroku, I also switched the underlying architecture during that migration from C# / ASP.NET to NodeJS which is exceptionally well suited to what I'm doing there. Previously: Dedicated servers, ~$1600 a month 8x dedicated servers at ~$200 each, each running 3 to 5 instanc…

So let's assume thats $500 in dynos, that's approximately 14 dynos. You have 30k concurrent users per dyno using Node.JS?

It's not that I don't believe you, I just think you don't understand what you're saying.

(Actually, it is that I don't believe you)

That said, if this is if you're doing 500 requests/sec (that's very different than 500 concurrent users) per dyno, good for you. My main bottleneck was not so much CPU on the web machines (I hit memory limitations), but the database layer.

Re: Heroku Isn't for Idiots

#34
post #5

I love this post, and hope it keeps coming up. Some day, developers will learn that even though they could do it as well as Heroku, given enough time and effort, it's just a lot cheaper not to! This comes up all the time with my company. We make hosted Continous Integration ( https://circleci.com ), and often hear "can't I just set up Jenkins?". And the answer is the same, "you could, but ...". Run it on EC2, where y…

The persistence scaling story for Heroku seems pretty questionable to me. Once you've maxed out what they offer for MySQL and Postgres, what exactly are you supposed to do? Start using EC2 RDS? Heroku seems to be like a more useful Google App Engine, a good place to host a blog or experimental project if you're not into dev-ops. If you have a knack (at all) for dev-ops, you're not saving yourself anything. The downti…

Just because you can do the devops work doesn't mean that's the best use of your time. Particularly on a small team (or in my current situation, sole developer). Heroku makes a lot of sense in that case. And since for the most part the follow standard development practices, there's little to no lock-in when you actually have the money to hire a sysadmin

Re: Heroku Isn't for Idiots

#35
post #33

Earlier quoted context omitted.

Here's my pretty graph for serving ~500,000 requests per minute on Heroku: https://api.playtomic.com/load.html Savings aren't exclusively because of Heroku, I also switched the underlying architecture during that migration from C# / ASP.NET to NodeJS which is exceptionally well suited to what I'm doing there. Previously: Dedicated servers, ~$1600 a month 8x dedicated servers at ~$200 each, each running 3 to 5 instanc…

So let's assume thats $500 in dynos, that's approximately 14 dynos. You have 30k concurrent users per dyno using Node.JS? It's not that I don't believe you, I just think you don't understand what you're saying. (Actually, it is that I don't believe you) That said, if this is if you're doing 500 requests/sec (that's very different than 500 concurrent users) per dyno, good for you. My main bottleneck was not so much CP…

Just over 20,000,000 people hit my API yesterday 700,749,252 times, playing the ~8,000 games my analytics platform is integrated in for a bit under 600 years in total play time. That's just yesterday.

There are lots of different bottlenecks waiting for people operating at scale. Heroku and NodeJS, for my use case, eventually alleviated a whole bunch of them very cheaply.

Re: Heroku Isn't for Idiots

#36
post #5

I love this post, and hope it keeps coming up. Some day, developers will learn that even though they could do it as well as Heroku, given enough time and effort, it's just a lot cheaper not to! This comes up all the time with my company. We make hosted Continous Integration ( https://circleci.com ), and often hear "can't I just set up Jenkins?". And the answer is the same, "you could, but ...". Run it on EC2, where y…

... except heroku doesn't do multi-region, which is where things start getting tricky. They make the easy immediate, but haven't really tackled the hard (yet.)

We use heroku, and every now and again that terrifies us. I'm not sure which will come first: Heroku going multi-region, or us having an outage due to another AWS problem and switching providers.

:fingers crossed:

Re: Heroku Isn't for Idiots

#37
post #33

Earlier quoted context omitted.

Here's my pretty graph for serving ~500,000 requests per minute on Heroku: https://api.playtomic.com/load.html Savings aren't exclusively because of Heroku, I also switched the underlying architecture during that migration from C# / ASP.NET to NodeJS which is exceptionally well suited to what I'm doing there. Previously: Dedicated servers, ~$1600 a month 8x dedicated servers at ~$200 each, each running 3 to 5 instanc…

So let's assume thats $500 in dynos, that's approximately 14 dynos. You have 30k concurrent users per dyno using Node.JS? It's not that I don't believe you, I just think you don't understand what you're saying. (Actually, it is that I don't believe you) That said, if this is if you're doing 500 requests/sec (that's very different than 500 concurrent users) per dyno, good for you. My main bottleneck was not so much CP…

>>> 20000000/24/60/60.0 ~231.46666666666667 requests a second?

Re: Heroku Isn't for Idiots

#38
post #37
post #33

Earlier quoted context omitted.

So let's assume thats $500 in dynos, that's approximately 14 dynos. You have 30k concurrent users per dyno using Node.JS? It's not that I don't believe you, I just think you don't understand what you're saying. (Actually, it is that I don't believe you) That said, if this is if you're doing 500 requests/sec (that's very different than 500 concurrent users) per dyno, good for you. My main bottleneck was not so much CP…

>>> 20000000/24/60/60.0 ~231.46666666666667 requests a second?

That's people, not requests. :)
Post reply on HN