5 ms·
Docker is great, and I love Docker. I have a couple of specialized non-HTTP apps I'd love to deploy to a Docker cloud, and I'm waiting for a convincing Docker P
by ekidd 12y ago
Docker is great, and I love Docker. I have a couple of specialized non-HTTP apps I'd love to deploy to a Docker cloud, and I'm waiting for a convincing Docker PaaS vendor to come along.
But:
1. A single, full-time sysadmin has a total employer cost of $200K per year in most tech markets.
2. A single sysadmin won't provide 24x365 coverage. They sleep, they take weekends off, they go on vacation.
3. I know people who run tech startups with 80+ employees and heavy server load who pay Heroku a few grand per month, and they just don't care. It works great, and it's a rounding error compared to their programmer salaries.
4. As I explained to one consulting client, if Heroku goes down (they do, every couple of years), you spend your time reloading https://status.heroku.com/ https://status.heroku.com/ and apologizing to your clients on the phone. And eventually the problem goes away by itself. If you run your own servers, it's all fun and games until you lose 2 RAID drives and the RAID controller board in one night over Christmas vacation—one month after your sysadmin quit, leaving the backup system broken.
In practical business terms, you need to be either huge or completely broke before Heroku looks like a bad deal. $1000/month will buy you a lot of dynos, and for most actual business, $1000/month is a rounding error.
- ChrisAntaki 12y ago> In practical business terms, you need to be either huge or completely broke before Heroku looks like a bad deal. $1000/month will buy you a lot of dynos, and for most actual business, $1000/month is a rounding error. Heroku is a great deal. Still, let's not forget about the cost of production tier Heroku addons, such as databases & logging.
- jordanthoms 12y agoPeople don't talk about it much, but it's very possible to mix Heroku with other services running on AWS. We use heroku for our application tier and host our own DB on EC2.
- grey-area 12y agoIn practical business terms, you need to be either huge or completely broke before Heroku looks like a bad deal. $1000/month will buy you a lot of dynos, and for most actual business, $1000/month is a rounding error. I'd dispute that, because of the following: * Heroku is in no way equivalent to a single full-time sysadmin, not even close * The choice is not between managing your own hardware and Heroku, it is typically between Heroku, VPS (managed hardware), AWS, and then possibly your own hardware. The same answer does not apply to everyone. * Many small companies don't have a large wage bill (outside SV), and don't have lots of devs or a sysadmin, instead they tend to have devs who do the sysadmin too. * Heroku can be significantly more expensive than other options like VPS which also don't require managing hardware (your RAID example) - for some businesses not burning VC money, that makes a big difference. In your example of $1000, you could probably serve the same customers with $100 a month using VPS servers. * Dynos are not the only cost, you'll be charged for storage too, and $1000/month is not a rounding error for many businesses starting out * As your business scales Heroku would become more and more costly - there have been reports of clients being charged things like $20000 a month when they start to hit scale. * They've had more than a few major incidents in this year alone: https://status.heroku.com/uptime https://status.heroku.com/uptime - no service is perfect, but that's not once every couple of years Heroku can look like a bad deal for all sorts of reasons, not least of which cost, and it is not comparable to hiring your own sysadmin, more like having a freelance sysadmin on call who is also responsible for thousands of other sites which are liable to be down at the same time. If you are medium/high traffic website with few other tech costs, heroku can be very expensive compared to the alternatives. Additionally, as documented by some of their customers, they are an extra level of indirection between your app and the user and that make troubleshooting issues or optimising harder - http://news.genius.com/James-somers-herokus-ugly-secret-annotated http://news.genius.com/James-somers-herokus-ugly-secret-anno... I would disagree anyway though that Docker (in its current form) is going go to kill services like heroku, because it requires significant expertise and setup time to get right, and doesn't fully address the same concerns.
- fomb 12y ago> They've had more than a few major incidents in this year alone: https://status.heroku.com/uptime https://status.heroku.com/uptime - no service is perfect, but that's not once every couple of years This is a frequently misunderstood metric. Whilst there is a number of incidents on status.heroku.com, the average platform uptime for a single app is still 99.995% [1] [1]https://status.heroku.com/uptime https://status.heroku.com/uptime
- nthj 12y ago> Many small companies don't have a large wage bill (outside SV), and don't have lots of devs or a sysadmin, instead they tend to have devs who do the sysadmin too. It's exactly those kinds of companies that Heroku is aimed at. I can hack being a devops. I don't want to: — I don't know what I don't know, which has huge ramifications for both security and uptime — I have plenty of opportunities available to me and am not interested in being on call all the time. Your business could not reasonably pay me enough to answer the phone at 3 am. — One day of heads-down product development can easily create several thousand dollars in value (or more) for a company. When I am interrupted with server patches, setting up new servers, or debugging a failed deploy process, and you throw a meeting or two in the mix, I'm downgraded to shipping a few bug fixes that day. Any competent executive wants his key developers heads-down shipping features and should not expect them to manage devops anymore than he would expect them to interrupt their day to balance the accounting books. It's a context switch. Throwing money at Heroku makes perfect sense here.
- gnepzhao 12y agoWhat if you can automate your AWS infrastructure, so there will NoOps, like using Heroku: CD/CI, AutoScaling, AutoHealing, just battery included? The point is that you have the 100% control of the infra, but the orchestration service can get you covered. And of the orchestration service went down, your instances will continue to run. Not like in Heroku, their downtime is your downtime!
- why-el 12y agoAn excellent way of putting it ekidd. Exactly what I came here to say. I work for a small startup and I am the one wearing the sysadmin hat most of the time, and every single day I imagine these disaster modes where it could cost us almost triple what we would have payed Heroku and others (Granted, we have technical reasons why we are using bare servers, nothing to do with money). Icing on the cake is that I am going on vacation this coming Tuesday. :D Always reason about stuff like this in terms of disasters. They are far more lethal to our company than the occasional $1000 you will be giving a dedicated hosting service.
- prof_hobart 12y ago> I'm waiting for a convincing Docker PaaS vendor to come along. Have you looked at Stackato? That looks to be very similar to Heroku, but uses Docker containers.