Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Unless you're a pretty large company, 5x the price in server hosting probably isn't worth your time worrying about.


Or working on a handful of personal projects that aren't revenue generating.


Unless the goal is to get more ops experience, wouldn’t those be an especially tempting place to spend more time on the project and less on support toil?


I think the issue is that for hobby projects, the alternative to Heroku isn't devops toil, it's scp.

You can get surprisingly far on a single box. PlentyOfFish, Mailinator, and Hacker News are all services that got to millions of users with one server. StackOverflow and Google are ones that got to millions of users with a handful of servers, mostly for redundancy.

When you have big teams that are all concurrently making changes and writing code to a live site that's mission critical, then things get complicated. But when there's only one dev and your few hundred thousand users don't mind too much if it goes down? You can just spend some one-time effort installing a stock Postgres install, scp over a single binary or tarball, and run it in the background with nohup or screen. When it's time to re-deploy, upload another version, kill it, and restart it.


I’m not arguing that you can’t do a lot on a single server but think about how many separate skills you mentioned even after cutting corners for reliability, data loss, or security.

I’ve gone to a bunch of hackathons where some of the participants got derailed on that kind of stuff and never even got to the part of the project they cared about. My point was that it can be worth a modest amount of money not have that overhead on a small project.


Start:

* Single server on Dokku, with multiple projects

Grow:

* Switch DB to DBaaS on your hosting provider's cloud

Grow More:

* Multiple Dokku instances behind load balancer/proxy as a service

...

You can then scale vertically a LOT before you need K8s style infrastructure.


>>> StackOverflow and Google are ones that got to millions of users with a handful of servers, mostly for redundancy.

Servers that can cost $50k each. Not a good example for affordability.


Setting something up like Dokku, which approximates the deployment of Heroku (git push to deploy), is fairly trivial.


Okay, now you have to support a Docker cluster, backups for persistent data, and deal with things like DNS, proxy, etc. management. It's easier than doing those from scratch but it's still a non-zero amount of work which will at best take time away from that small side project and at worst cause major problems if you never come back to installing security updates, running backups, testing the restore process, etc.


LOL... Dokku on DO is pretty simple... as to backups, it's a checkbox option, as to redundancy, for non-revenue generating projects, it's generally acceptable to have some down time. As to back up again, beyond some potential data loss, it's pretty easy to get CI/CD up and pushing to Dokku.

In any case, it doesn't need to be as completely flushed out as a company with millions in investment capital could do.


+1 on this, love Dokku myself. Great option for self-hosting and can even do some redundancy with multiple servers behind a load balancer.


Dokku isn't much more support toil, so to speak and can operate starting on a single server... $10-20/month on Linode or DO. With DO, can eventually grow a bit with hosted DBaaS, and multiple dokku instances, with a load balancer in front. Start small, some room to grow, long before the likes of K8s is needed.


What toil? You put a service up, it stays up.


Unless you’re just dropping a .php file in a shared server account, you have more setup and upgrade work setting up a running service. The first time it fails and you have to manually rebuild it, you’ll learn a valuable lesson about the PaaS value-add, too.


I find that dokku is a REALLY good middle ground... can even grow to have 2-3 servers, with a hosted load balancer and DBaaS, just deploying 3X exactly the same if you need redundancy. And starting off with a single server to experiment and host multiple apps is pretty easy to get started with (comparable to Heroku and similar).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: