How to choose Server & DB for Meteor App

Hey guys,

I am launching my first Meteor app which has only ~10 guaranteed users as of today, with potential to reach a few thousands in maturity. It is basically a simple agenda app, so there aren’t any heavy-processing features.

I am trying to choose whether to go for mLab or MongoDB Atlas, and which plan/size fits best. However, I can’t find a good way to estimate my needs in terms of storage and RAM.
My budget is very limited, so price is an important issue.

Can anyone give me a few tips on how to make this decision?

btw: App is hosted in Heroku (Hobby tier).

Hi Patrick, if your’e budget is very limited I wouldn’t suggest you to use either mLab or MongoDB. I passed through you’re same spot (Now we have around 500users but we started with around 20-30) and the best solution for us was to deploy our application with Meteor-up in a 5usd/month droplet from digitalocean. Meteor-up creates a inside app MongoDB instance which makes things much cheaper. If you are scared of loosing any data you can just create a very basic python script that makes a backup of your server every x minutes/hours (I did this and it worked perfectly). I hope this helps you a little bit.

Interesting, so you create a backup using a script and store on some external storage?

Exactly. My script does a ssh tunnel, connects to the local mongodb of the Digital Ocean droplet and copies every MongoDB collection as a .json (so I can reimport it easily if needed). My script then encrypts the whole backup and uploads it to dropbox. @alawi

1 Like

Ditto - for that many users a single $5 Digital Ocean droplet running meteor+mongo is fine, deployed easily with meteor-up. I’m running fine with 250 daily users spread across timezones, average ~50 concurrent sessions, and it’s not making a dent in the memory or CPU usage.

I have a backup script running every 3 hours (actually initiated via Tasker on my android phone, doing a mongodump via Termux), but in two years I’ve never needed the backups…).