Files
system-design-101/data/guides/how-will-you-design-the-stack-overflow-website.md
Kamran Ahmed ee4b7305a2 Adds ByteByteGo guides and links (#106)
This PR adds all the guides from [Visual
Guides](https://bytebytego.com/guides/) section on bytebytego to the
repository with proper links.

- [x] Markdown files for guides and categories are placed inside
`data/guides` and `data/categories`
- [x] Guide links in readme are auto-generated using
`scripts/readme.ts`. Everytime you run the script `npm run
update-readme`, it reads the categories and guides from the above
mentioned folders, generate production links for guides and categories
and populate the table of content in the readme. This ensures that any
future guides and categories will automatically get added to the readme.
- [x] Sorting inside the readme matches the actual category and guides
sorting on production
2025-03-31 22:16:44 -07:00

1.3 KiB
Raw Permalink Blame History

title, description, image, createdAt, draft, categories, tags
title description image createdAt draft categories tags
How to Design Stack Overflow Explore the architecture of Stack Overflow and its design considerations. https://assets.bytebytego.com/diagrams/0343-stack-overflow-architecture.png 2024-02-20 false
real-world-case-studies
System Design
Architecture

Image

If your answer is on-premise servers and monolith, you would likely fail the interview, but that's how it is built in reality!

What people think it should look like The interviewer is probably expecting something on the left side.

  • Microservice is used to decompose the system into small components.
  • Each service has its own database. Use cache heavily.
  • The service is sharded.
  • The services talk to each other asynchronously through message queues.
  • The service is implemented using Event Sourcing with CQRS.
  • Showing off knowledge in distributed systems such as eventual consistency, CAP theorem, etc.

What it actually is Stack Overflow serves all the traffic with only 9 on-premise web servers, and its on monolith! It has its own servers and does not run on the cloud.

This is contrary to all our popular beliefs these days.