These are the best resources for System Design on the Internet.
- Video Processing
- Cluster and Workflow Management
- Intra-Service Messaging
- Message Queue Antipattern
- Service Mesh
- Practical System Design
- Distributed File System
- Time Series Databases
- Rate Limiting
- In Memory Database - Redis
- Network Protocols
- Chess Engine Design
- Subscription Management System
- Google Docs
- API Design
- NoSQL Database Internals
- NoSQL Database Algorithms
- Database Replication
- Containers and Docker
- Capacity Estimation
- Publisher Subscriber
- Event Driven Architectures
- Software Architectures
- Microservices
- Distributed Transactions consistency Patterns
- Load Balancing
- Alerts and Anomaly Detection
- Distributed Logging
- Metrics and Text Search Engine
- Single Point of Failure
- Location Based Services
- Batch Processing
- Real Time Stream Processing
- Caching
- Distributed Consensus
- Authorization
- Content Delivery Network
- Testing Distributed Systems
- System Design Resources
- Transcoding Videos at Scale
- Facebook Video Broadcasting
- Netflix Video Encoding at Scale
- Netflix Shot based encoding
- Facebook Cluster Management
- Google Autopilot - Autoscaling
- Netflix Workflow Orchestration
- Opensource Workflow Management
- Meta Hardware Management
- Meta Capacity Assignment
- Amazon EC2
- DB as queue Antipattern
- Using a database as a message queue
- Anti-pattern of DB as a queue
- Drawbacks of DB as a queue
- Kubernetes Service Mesh
- Kubernetes Sidecar
- Service Mesh
- NginX Service Mesh
- Data Plane and Control Plane
- Facebook Messenger Optimisations
- YouTube Architecture
- YouTube scalability 2012
- Distributed Design Patterns
- Monolith to Microservice
- Zerodha Tech Stack
- Pinterest Time Series Database
- Uber Time Series DB
- TimeSeries Relational DB
- Facebook Gorilla Time Series DB
- Redis Official Documentation
- Learn Redis through Redis University
- Redis Open Source Repo
- Redis Architecture
- What is HTTP
- QUIC Protocol
- TCP Protocol algorithms (First 10 pages are important)
- WebRTC
- WebSockets
- Dynamic Source Routing using QUIC
- Cassandra Architecture
- Google BigTable Architecture
- Amazon Dynamo DB Internals
- Design Patterns in Amazon Dynamo DB
- Internals of Amazon Dynamo DB
- Hyperloglog Algorithm
- Log Structured Merge Tree
- Sorted String Tables and Compaction Strategies
- Leveled Compaction Cassandra
- Scylla DB Compaction
- Indexing in Cassandra
- Database replication
- Netflix Data replication - Change Data Capture
- LinkedIn Logging Usecases
- Uber Trillions of indexes in LedgerStore
- Google Capacity Estimation
- Scalability at YouTube 2012
- Back of envelope Calculations at AWS
- Capacity Estimation
- Hexagonal Architecture
- Hexagonal architecture (Alistair Cockburn)
- The Clean Code by Robert C. Martin (Uncle Bob)
- CQRS
- DomainDrivenDesign
- Monolith Architecture
- Monoliths vs Microservices
- Microservices
- Uber Nanoservices antipattern
- Uber Domain oriented microservice
- Load Balancer with Sticky Sessions
- NetScaler what is load balancing
- Nginx Load Balancing
- Consistent hashing
- Minimizing connection churn
- Google Subsetting Algorithm
- Outlier Detection
- Anomaly Detection
- Uber Real Time Monitoring and Root Cause Analysis Argos
- Microsoft Anomaly Detection
- Facebook Data Engineering
- LinkedIn Real Time Alerting
- LinkedIn Isolation Forests
- Avoiding Single Points of Failure
- Netflix Multi-Region Availability
- Oracle Single Points of failure
- DNS single point of failure 2004
- DNS traffic management by Shopify
- Sharding
- LinkedIn Brooklin- Real-time data streaming
- Netflix Real Time Stream Processing
- KSQLDB for Kafka
- Netflix Psyberg