Files
system-design-101/data/guides/must-know-system-design-building-blocks.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.9 KiB

title, description, image, createdAt, draft, categories, tags
title description image createdAt draft categories tags
Must Know System Design Building Blocks Essential system design components for building scalable applications. https://assets.bytebytego.com/diagrams/0285-must-know-system-design-building-blocks.png 2024-02-11 false
cloud-distributed-systems
system design
scalability

These are divided into 6 broad categories

Distributed Computing

  • Distributed message queues facilitate async communication and decouple services

  • Distributed caching improves performance by storing frequently accessed data in memory

  • A Distributed task scheduler manages and coordinates the execution of tasks

Scalability and Performance

  • Scaling services help adjust the capacity of services to handle changes in demand

  • CDNs serve content from geographically closer locations to improve performance and reduce latency.

  • Consistent hashing minimizes the remapping of keys when nodes are added or removed

Service Management

  • Service discovery enables services to find and communicate with each other without hard-coding network locations

Networking and Communication

  • DNS translates human-readable domain names into IP addresses

  • Load Balancer distributes incoming network traffic across multiple servers

  • API Gateway acts as a single entry point for a group of microservices

Data Storage and Management

  • Databases store and manage structured data

  • Object storage helps store complex objects like images, videos, and documents

  • Sharding helps horizontally partition data across multiple nodes

  • Replication helps horizontally scale the database by copying data to multiple nodes

Observability and Resiliency

Gain insights into the system's internal state through metrics, logging, and tracing.