Where do you host your webapps, Heroku or AWS/VPS?

Hello,

I’m working in the last bits of my (endless) project, and I’m thinking about where to host it. It’s just a Symfony 3 application (PHP7 + PostgreSQL + Redis for cache).

Since 2010 I have a VPS at Linode, and I’m managing Linux servers since, at least, 2003-2004, so I already have experience with these works. I know how to setup Apache, domains, SSL, databases, backups, updates, etc. On the other hand, I can host the application on Heroku, pay something like $60 each month, and forgot about servers, backups and so.

What do you recommend for a non user massive web application? I mean that there won’t be a free tier (only 30 days trials or paid accounts), so I don’t think I’ll have something like a bazillion user accounts…

Hello,

For a paid SaaS app, I recommend using AWS.
My stack is Python + PostgreSQL + Redis for tasks, so similar to yours.
With AWS, I use Elastic Beanstalk + RDS + Redis + Cloudfront + S3

With Elastic Beanstalk, you’ll get automatic deployment on EC2, a load balancer, auto scaling, auto updates. With RDS you’ll get automatic backup for your database

Configuring Elastic Beanstalk is not as easy as a “git push heroku master” because you’ll have some configuration files to write, but honestly it doesn’t take that long (The first time, it took me an afternoon)
Once everything is setup you’ll deploy with one command (“eb deploy” ) and you’ll get all the advantages of Heroku.

Plus you’ll pay 80% less than Heroku.

Heroku is a great plateform though for MVPs / quickly deploying something. But for long term use, the simplicity of deployment is not worth the price imo.

2 Likes

That’s exactly the AWS services I use for Feature Upvote (my tech stack is Java + MySQL). I am 100% happy with it.

AWS gets a heck of a lot cheaper if you buy “reserved instances” once your infrastructure choices have become stable. I reduced my monthly AWS bill by almost two-thirds.

3 Likes

To me since I’m using Go, DigitalOcean $5 or $10 droplet can go a long way since the runtime takes literally very few memory and CPU (even if you have tens of thousands of request / seconds). Having a load balancer and 3 droplet $5 will cost you $35 and you can scale this thing with virtually no down-time I would dare say similar to AWS EBS.

I also prefer having my hand on the servers instead of reading AWS docs and creating config file. Total cost when I was running Roadmap was like ~$60/months for 4-5 servers (this includes the database) and yes it served lots of users :slight_smile:

I guess it depend if you want a fully managed experience (safer, easier, higher cost, higher learning curve and things to read) or handling yourself and potentially being a rough situation but truly building it like you want and be responsible of choices you decide on :slight_smile:

I’m running Arch Linux on my desktop, so I pretty much live in Linux full-time, so AWS does not really save me time, YMMV.

As usual in the tech industry there’s no one answer that fit for all.

Your best option is to deploy a tiny thing on multiple cloud and see how you feel, GCP is also one I would pick before AWS simply because “to me” their documentation is just easier and I prefer their style.

2 Likes

Linode and Digital Ocean VPSes, Postgres, Python, Go, Node, and other specialized open source applications. I don’t use PaaS because it creates vendor lockin, and I’ve had problems with Azure and AWS uptime and AWS API bugs in certain datacenters when I was evaluating them. I also found them very expensive compared to the value they provided; ymmv.

1 Like

Hello,

Thank you for your answers. I’m somewhat surprised because it seems that no one is using managed services, like Heroku. I agree that it’s more expensive than AWS or a simple VPS, but I didn’t though about the vendor lockin. I’ll continue with my Linode and, if/when the users grow, I’ll rent more servers or enlarge the current instance.

Thank you!

I use Heroku for my SaaS product which launched just over a year ago and I can’t recommend it highly enough. It’s robust and reliable, the tooling is great and the add-on marketplace has a lot to choose from.

I can’t honestly fathom why anybody would run a commercial app on their own server these days, unless they have an unusual workload. Time is the scarcest resource when you’re a solo founder, so anything that takes away even a few hours of grunt work a month is well worth a few extra 10s of $ IMO.

It’s a bit related: Anybody have experience with https://nanobox.io ?

Jumping in late here…I am a huge advocate for Heroku (I have been hosting KickoffLabs there for about 7 years.).

There is so much else to do launching a business, using Heroku is a great way clear some big tasks off your plate.

+1 @scottw - Heroku is a great solution - and from the sound of it, their smallest plan of $7/month will work fine for you.

I guess the real answer to your question is are you ready to trade the problems you know and are comfortable with (DevOps) for more uncomfortable problems around getting other people to use your app? (if that’s your intention.)

Cheers,
Bob