system-design-primer

Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.

21 articles 336k View on GitHub ↗
21 articles
Reverse Proxy vs Load Balancer: Key Differences and Use Cases

Learn the key differences between reverse proxies and load balancers. Discover how reverse proxies secure and optimize access, while load balancers ensure scalability and fault tolerance for your applications.

deep-dive
Feb 24, 2026
How to Scale a System to Millions of Users on AWS: A Step-by-Step Architectural Guide

Learn how to scale a system to millions of users on AWS with this step-by-step architectural guide. Discover strategies for incremental growth and robust performance.

architecture
Feb 24, 2026
LRU Cache Implementation Using Object-Oriented Design Principles: Python Guide

Learn LRU cache implementation with object-oriented Python. Achieve O(1) retrieval and insertion using a hash map and doubly-linked list, with automatic eviction.

deep-dive
Feb 24, 2026
How to Design Amazon's Sales Ranking by Category Feature: A Complete System Design Guide

Design Amazon's sales ranking by category feature using MapReduce and a REST API. Learn to handle 100 billion monthly reads efficiently with a complete system design guide.

how-to-guide
Feb 24, 2026
Performing Back-of-the-Envelope Calculations for System Design: A Complete Guide

Master back-of-the-envelope calculations for system design. Learn to estimate requirements, performance, and cost quickly without coding. Essential guide for engineers.

how-to-guide
Feb 24, 2026
CDN Integration and Effective Caching Strategies for Global Content Delivery

Master CDN integration and effective caching strategies for global content delivery. Learn how CDNs speed up latency and reduce server load for seamless worldwide access.

tutorial
Feb 24, 2026
How to Design a Key-Value Store for High Performance: Architecture and Implementation Guide

Learn to design a high-performance key-value store using in-memory caching, consistent hashing, and durable persistence. Explore essential architecture and implementation details for massive scalability and fault tolerance.

how-to-guide
Feb 24, 2026
Horizontal vs Vertical Scaling: Pros, Cons, and Architectural Trade-offs

Understand horizontal vs vertical scaling pros cons architectural trade-offs. Learn which scaling method is best for your system design.

deep-dive
Feb 24, 2026
Consistency Patterns in Distributed Systems: Strong, Eventual, and Weak Consistency Explained

Understand strong, eventual, and weak consistency patterns in distributed systems. Learn how each guarantees data accuracy and when to apply them for optimal performance.

deep-dive
Feb 24, 2026
How to Design a Social Network Data Structure for Efficient Querying: A Complete System Design Guide

Design an efficient social network data structure using sharded graph storage and BFS traversal for sub-second user connection path querying across distributed servers.

tutorial
Feb 24, 2026
Microservices Architecture Patterns and Service Discovery Methods: A Complete Technical Guide

Explore microservices architecture patterns and service discovery methods. Learn how to build scalable, resilient systems with technologies like Consul etcd and Zookeeper.

tutorial
Feb 24, 2026
How to Design a Scalable Web Crawler: Architecture & Implementation Guide

Learn to design a scalable web crawler with our architecture and implementation guide. Discover how to handle billions of pages using a distributed queue-based system.

how-to-guide
Feb 24, 2026

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →