
System Design Resources
System Design Key Concepts
- Scalability
- Latency vs Throughput
- CAP Theorem
- ACID Transactions
- Rate Limiting
- API Design
- Strong vs Eventual Consistency
- Distributed Tracing
- Sync vs Async Communication
- Batch vs Stream Processing
- Fault Tolerance
System Design Building Blocks
- Database
- Horizontal vs Vertical Scaling
- Caching
- Distributed Caching
- Load Balancing
- SQL vs NoSQL
- Database Scaling
- Data Replication
- Data Redundancy
- Database Sharding
- Database Indexes
- Proxy Server
- WebSocket
- API Gateway
- Message Queues
Architectural Patterns
- Event-Driven Architecture
- Client-Server Architecture
- Serverless Architecture
- Microservices Architecture