System Design Visualized
Lesson 1.1

Single server setup

Play this lessonThis lesson comes with an interactive animation you can break, a live-code challenge and a chapter quiz.

To start simple, everything runs on one server: the web app, the database, the cache. Here is what happens when someone visits your site:

  1. The user types a domain like api.mysite.com. The Domain Name System (DNS) translates it into an IP address. DNS is usually a paid third-party service.
  2. DNS returns the IP, for example 15.125.23.214.
  3. The browser sends HTTP requests directly to that IP.
  4. The server responds with HTML for web pages, or JSON for apps.

Traffic comes from two places: web apps (server-side code plus HTML/JavaScript in the browser) and mobile apps, which talk to the server over HTTP and usually exchange JSON, such as GET /users/12 → {"id": 12, "firstName": "John"}.

Analogy: a food stall where one person takes orders, cooks, and handles the money. Great for 10 customers a day. A disaster for 10,000.

Key takeaways

  • DNS turns names into IP addresses.
  • HTTP is the language of requests and responses; JSON is the usual data format for APIs.
  • One server = one single point of failure (SPOF).

Remember it, then prove it

Create a free account to save your progress, get spaced-repetition reviews of what you miss, and design real systems in the interview simulator.

Start free