I am creating a mobile application that is using a node.js (with [login to view URL] & mongoose) and MongoDB - I have no trouble program programming the mobile app and the server (which I am using a REST API).
However, I need advice on the back end infrastructure.. I am assuming my app will have the potential to be handling thousand of users, receiving thousands of read / write queries per day. I am assuming this to prepare for how scaling works.
Due to this nature, my app needs to be up and available pretty much 100% of the time.
Therefore I am seeking advice how best to plan my infrastructure hosting so that my node.js instances can be scaled appropriately if the application reaches many users. I have been thinking of using kubernetes and having my node.js instances spread that way. My other options were creating multiple VM's in different regions on the cloud, and spreading my node server as docker instances on the VMs.
If there is anyone who can help me best plan this architecture - I will provide you with more detail and hopefully a more experienced individual can give me a better insight in the best approach. A simple document providing short explanations to a fully scalable & reliable architecture for my application would be beneficial.