8 ms·
What pain is Heroku saving you to justify being 5x more expensive than Lightsail/Digital Ocean/Linode? All websites I maintain/deploy are either built as a Doc
by mythz 8y ago
What pain is Heroku saving you to justify being 5x more expensive than Lightsail/Digital Ocean/Linode?
All websites I maintain/deploy are either built as a Docker image and published by CI on git check-in or deployed locally with a single rsync/supervisord bash script (or right-click Web Deploy for some older IIS/ASP.NET Apps). I probably have over 50 sites I'm currently hosting so using anything that much more expensive wont enter into consideration.
But I'm not seeing what could justify the extra cost? especially as the cost is reoccurring, if it's some kind of effortless/magical scalability I'd rather put that additional cost towards more hardware and buy more headroom.
- sosodev 8y agoI agree. You can set up a Heroku like setup pretty easily. Push to GitLab to trigger your pipeline that builds your container. Now your $5 vps with docker compose and watchtower is updated.
- fulafel 8y agoSounds like you should start a Heroku competitor :) Btw watchtower seems abandoned, anyone know is there a story to it?
- nothrabannosir 8y agoHeroku turns a strategical liability ("I have only one employee who understands what rsync is; if he leaves I'm screwed") into a fiscal one. Any company I've ever known will always choose the latter, for anything outside of their core competency. We use Heroku heavily, and we went from 2 full time devops engineers to 0. Everything is now buttons and sliders. There are no "security patches". The CEO could log in and scale if he needed to; it's a slider. We get monitoring for free (labour free, not cost, i.e. the "good" free). Memory usage, CPU usage, HTTP status codes, logging: it's all there. We spend no time thinking about rsync or devops or any of that: we just solve the problems we're good at. Of course, everything is a matter of scale. Legend has it, Deliveroo UK only moved off Heroku after they grew so large, Heroku wasn't willing to offer them more dynos on their account. That sounds like a reasonable time to go in house. But any <100 people company.. why bother? focus on what you're good at, and let other people do devops.
- mythz 8y agoIMO the fear is being overstated, everything's written down in either in single deploy script or configured CI, i.e. there's not going to be some loss of know how. It's the same as if the person in charge of Heroku leaves, someone else needs the login credentials and know how to setup Heroku as they would with any CI. I don't know what Heroku is offering, but Lightsail and ECS instances also have metrics and pretty graphs (tho admittingly I rarely check them myself), maybe it will save me some ssh sessions to manually update security patches, I was recently able to upgrade my Lightsail instance to the latest Ubuntu 18.04 LTS with just: $ do-release-upgrade > But any <100 people company.. why bother? Because it's 5x more expensive. > focus on what you're good at, and let other people do devops. But it already takes hardly any time/effort to keep doing what I'm already doing. I guess it's for different Companies who see the value-added benefits that justify the cost, but it's being propositioned here that everyone should be using Heroku first, just boggles my mind why most people would do that as the first option when it's so much more expensive. I already think the cloud is too expensive, so there's little chance I'm going to be paying a re-occurring premium for something that's not going to save me any time over what I'm already doing.
- aiiane 8y agoUpgrading with do-release-update is simple if it works... but what happens when it breaks?
- zrm 8y ago> Upgrading with do-release-update is simple if it works... but what happens when it breaks? That is what snapshots are for.
- marcinzm 8y agoSo now the non-engineer needs to understand snapshots, ensuring snapshots don't break, ssh, roll back, etc. That's assuming the bad upgrade didn't leave any damage behind (like DB data, etc.). And assuming they didn't lose the post-it they wrote the CLI credentials on since you easily can't reset those unlike Heroku.
- jonahx 8y ago> What pain is Heroku saving you to justify being 5x more expensive than Lightsail/Digital Ocean/Linode? The pain of setting it up, applying security patches, making sure you set it up securely to begin with. The pain of having a mental model more complex than "the server is what I git push to." > I probably have over 50 sites I'm currently hosting so using anything that much more expensive wont enter into consideration. No one would argue someone in your position should use heroku. It's for people who are willing to pay to avoid sysadmin work... which is a lot of developers.
- kopyxe275 8y agoHow does Heroku and other managed services perform updates that might contain breaking changes? Or do they only perform minor updates or security updates with no breaking changes? My biggest fear with managed hosting and managed databases is being given too short of a window before they update.
- reissbaker 8y agohttps://devcenter.heroku.com/articles/stack https://devcenter.heroku.com/articles/stack tl;dr: You get a few choices of Ubuntu LTS releases, which they maintain for a long time (currently they still support 14.04, now nearly 5 years old). Or you can push Docker images, at which point the underlying OS is squarely back in your court — technically they must be applying kernel patches, but Linus is fairly religious about not breaking userland.
- NicoJuicy 8y ago1 person company: sure, let's do everything myselve. As cheap as possible. Two: here I'll teach you, take over DevOps so I have more time. 10 person team, everyone new and your application runs in the cloud. The person who took over, by now, left the company. Extended the infrastructure, didn't inform you and the application has been reworked so it runs on the cloud. Welcome to the perils of working with people.
- ngrilly 8y agoWith your stack, how do you deploy new versions with zero downtime? Do you have a load balancer and start the new version, switch new traffic to the new version, drain connections to the old version, then stop the old version? And how do you update the OS and the kernel without downtime? Do you setup a new machine, deploy to it, switch the traffic to the new machine, and decommission the old one? I'm asking because these are the kind of things Heroku and other PaaS do for you.