HTTP request and response (Ikea Store Analogy)

Before you know how to design a scalable web application, we must first make sure we understand how a web server works.

A written version of this can be found here at Medium: HTTP request and response and how web applications work.

Key Points

  1. Receptionist: web servers like Apache, Nginx, Tomcat, Webrick, etc.
  2. Workers: programming languages like PHP, Ruby, Python, Java, C#, Node.js
  3. tools that the workers use: libraries/frameworks that are available for each programming language.
  4. MVC framework: a design pattern where workers are organized into three groups (M: models/database-related tasks, V: tasks related to what the client views or in other words html/css/js output, C: controls information flow particularly how information is managed through models/views)
  5. Warehouse: database
  6. there are lots of different ways to organize inventories.
  7. There are mainly relational (MySQL, Postgres, MariaDB, Amazon RDS) vs non-relational databases (MongoDB).
  8. You could also store the information on disk vs memory (e.g. Redis)

How did the analogy help you understand how a web application works? What were new concepts here that you didn't know previously?

Submitted answers • 3

Top Answers

  • The analogy was very helpful as it describe all different pieces of web app and put them together and i was wish to find explanation like that in the beginning of my learn.Posted 349 days ago

    • naPosted 242 days ago

      • It gives me a clear understanding of HTTP request.Posted 179 days ago