Scaling

Standard web scale means a frontend lb serving to many identical web servers. Then one or more primary database hosts possibly with read only replicants. Every component horizontally can process any request. Except the database primaries must take writes by definition. The frontend lb has to handle every request but it can be very light weight.

What if you have a system where a user logs in and remains logged in for the whole session. You want their data to be completely isolated from other users.

Bundle the data (as an sqlite file) plus the application code into a container. Then put a separate login application in front. All requests for that user go to a specific container. It would be like remote hosting an install of a desktop application.

When you add more users you spin up a new container for them. You can deploy different versions of the application for different users. The data is completely isolated from other users. The login can also spin up the container so the application can be completely idle and not take resources. Unfortunately the router application must be heavier as it needs to check the access token on every request. It's not suited for an application with a lot of activity where the user is not logged in.