From orchestrating containers to "serverless" to doing it all yourself with an ansible script and a $5 DO droplet, the options for hosting websites and apps have changed considerably in the past decade.
What method do you use for putting stuff on the internet? Am I "old school" for thinking I still need to install and configure a server myself?
Oldest comments (29)
Like most general questions, the sane answer is "it depends" :)
I personnally use a mix of those based on:
Examples:
With that said, all those tools are abstractions of configuring stuff yourself, so what do you want to abstract away ?
Do you feel the need to do it ? Or does it come from peer pressure ?
"It depends" is always the case with software. I want to get a feel for what's popular. Maybe try something new that I haven't considered.
What do you do at work with AWS? I dabbled with lambda but felt it was restrictive.
Aws Lambda is a lightweight compute solution, so it's not its goal to do cpu intensive things.
We're using the following AWS products:
We're also using netlify.com/ to deploy our frontend/SPA apps.
I use Azure now but I abused the hell out of HostGator for years serving 5TB+ of downloads a month on their "unlimited" shared hosting plan. Before HostGator I used another unlimited shared hosting provider but got kicked off cause...5TB+ a month and my traffic/php CPU cycles were shutting down other sites. Azure egress is not cheap so I redirect the file downloads to another site (mediafire.com) that displays ads but nonetheless serves my files to users for free. They are getting a bad deal I can assure you. My ads paid me about $100-200 a month and Azure charges far more than that for 5TB a month.
Almost always use DO or Vultr.
Uberspace.de is a fair shareholder that gives you ssh access, based in Germany. They also have awesome support.
Serverless stuff goes to gitlab pages.
DEV is hosted on Heroku.
docs.dev.to is hosted on Netlify
I used Heroku this past year for my fantasy congress app and it was so expensive! But, I had a lot of jobs to run in the background which is where I think they got me.
Yeah Heroku can be expensive if you're not careful (or even if you are). For us we have much bigger expenses than the raw Heroku bill so it hasn't been worth over-optimizing yet.
TIL docs.dev.to exists. Nice!
I use digital ocean for most things, but have been exploring other options. I have found that other options are way more expensive and it's hard for me to give up the flexibility of doing whatever I want on a DO droplet.
Money matters, but I can see DO really providing a good platform (Space, K8s .Etc) for small developers like me, which is very sufficient.
If I'm experimenting and want a VM, DO is my go-to because their UI is so clean. I haven't dabbled with their CLI/SDK tooling at all, but I would like to. I saw they have some Go bindings to libvirt that might be cool for fiddling with VMs on hardware at home.
For containers, I have a GKE cluster that I run a bunch of stuff on. I leave it up but it's mostly for learning purposes. This is kind of the testing ground for Kubernetes ideas I might want to take to work, and a place to play with GCP :P I used cert-manager and subdomains to get a bunch of services running on it nicely with TLS: Prometheus, Drone CI, Argo CI/CD, Harbor docker registry.
GKE is one of my favorite tools right now.
This is my personal stuff only. My work is all Azure.
I sorely lack AWS experience; I think my next personal project will be wrangling that beast. I already have an idea in mind :)
One ❤ for the UI, and also performance
Personal: Google cloud (appengine and VM) for back end stuff, I am very happy with it. I used AWS but their UI is too awful and not that cheap.
Github Pages, AWS S3 and blackblaze (is like dropbox but with open HTTP) for static hosting with CloudFlare as CDN.
I am too pragmatic and hate doing ops so everything is managed or dockerized.
...depends. What do you mean by a server? Do you mean configuring a vm (like a DO droplet) or a docker container and simply configuring your server's [framework-of-choice] headers, cache policy, etc?
For all-things-static I use Netlify or now.sh. My current company's production runs on DO, although I believe a lot of the VM is unused most of the time, so we might opt for something else in the future.
I use Digital Ocean mostly. Every now and then I try other solutions, but I haven't found any option that I like better yet.
I'm not fond of solutions where I have to learn a CLI API or, even worse, a specific web UI to configure and deploy my applications, I'd much rather have direct ssh access to a VPS.
I do use AWS at work, like every other backend developer out there, but I wouldn't choose any serverless solution for a personal project.
Yeah this is kind of where I'm at too.
Depends on bottlenecks, choose the right solution. I'm not fans of fancy things, all I want to achieve is simple stable and performance.
Container is really good things for make sure environment consistensy, speedy deploy and testing.
Serverless is good for Webhook-like and resource spiking scenario, billed by invoked calls, it might save a lot cost but different story with high resource usage. Development is also depends on framework/environment/provider, probably you need abstract your code base very well, else need to rewrite. (As my understanding)
But if you are more to PHP based, it is not recommended to do orchestrating, 1 PHP website container, can equal my whole hosting server usage. About 15 website, MySQL, Nginx, PHP 5.6, 7.0, 7.1, 7.2, 7.3 via managed panel, and also running two JAVA web service (SparkJava), just about 400mb ram usage, created 2yr ago, > 96% up time.
I make all my sites to be static so I use a mix of Netlify and GitHub Pages.
Most of my personal stuff is on DO. I have also been playing around with GCP for one project. I haven't done much with it yet, but I like the simplicity of it's UI, at least compared to AWS. I'm also intrigued by their use of chromeOS as a server OS. I don't have a ton of experience with it, I just like playing with different OS's.
At work, we're all AWS. AWS does a lot of things right, and they have a ton of features, but I feel that their UI leaves a lot to be desired, and their documentation is a bit hard to navigate, for lack of a better term. I can usually find a solution to whatever problem I'm trying to solve, but it takes longer than I think it should.
For me it all depends.
If its some blog or site then I use shared hosting as I get it for like $3p/m , if blog/site goes over 20K visitors per month I move it onto AWS.
If its something personal like an app etc, again I use AWS.
I use DigitalOcean for the most. But it depends, I'm also using Glitch for demos and Surge.sh for some frontend project.