A standard architecture that may scale, but not much is consisted of:

That’s great and all. This approach can scale to a certain extend, but not very much.

Scaling:

Horizontal scalability introduces some complexities, which come as a by-product of having multiple instances. What if a DB becomes too big and we need to scale it?

Load Balancers:

Databases:

We’ve scaled our app with LBs and adding more servers, but we also need to scale the DB. To do so, independently from the server, we can extract the DB onto its own instance.

The backend connects to the Database and based on the type of DB, READs and WRITEs data to it