← Back to problems

24. Simple Web App with a Database

BEGINNER
BeginnerLoad BalancingSystem DesignThree-Tier

Design the most basic scalable web application: clients reach a balanced pool of application servers that read and write a database.

Design the architecture of a simple web application : the foundational three-tier shape that almost every larger system builds on. Users make requests from a client (a browser or app); those requests are distributed across more than one application server so no single server is a bottleneck or a single point of failure; and the application servers read and write persistent data in a database. This is the starting point every system design grows from. Your job is to lay out that basic topology correctly: requests enter through a load balancer, are spread across multiple application servers, and those servers talk to a shared database that holds the data. Then briefly document the API the application exposes and the trade-offs of this simple design (what it handles well, and where it would need to grow next).
Log in to submit a solution

Comments

Log into join the discussion.