https://www.tutorialspoint.com/software_engineering/software_analysis_design_tools.htm
https://www.tutorialspoint.com/uml/index.htm
https://www.tutorialspoint.com/system_analysis_and_design/system_design.htm
System | Link |
---|---|
Alex Lu | System Design Tips - https://www.linkedin.com/in/alexxubyte/ |
Stackoverflow | https://www.linkedin.com/posts/alexxubyte_systemdesign-coding-interviewtips-activity-6983452178417860608-YGFP |
♦ Basic Fundamentals
1. Scalability
2. Availability
3. CAP Theorem
4. ACID Transactions
5. BASE Transactions
6. Consistency Patterns (Strong vs Eventual)
7. Rate Limiting
8. Fault Tolerance
9. Single Point of Failure (SPOF)
10. Disaster Recovery
11. Content Delivery Network (CDN)
12. Proxy vs Reverse Proxy
13. Domain Name System (DNS)
14. Caching Strategies (LRU, LFU)
15. Distributed Caching
16. Load Balancing (Round Robin, Weighted, etc.)
17. Database Types (SQL vs NoSQL)
18. Database Indexes
19. Data Replication
20. Database Sharding
21. Failover Mechanisms
22. Distributed Tracing
23. Message Queues (Kafka, RabbitMQ)
24. WebSockets
♦ Tradeoffs + Patterns
25. Vertical vs Horizontal Scaling
26. Stateful vs Stateless Design
27. Batch vs Stream Processing
28. Push vs Pull Architecture
29. Long-polling vs WebSockets
30. REST vs RPC
31. Synchronous vs Asynchronous Communication
32. Latency vs Throughput
33. Read-Through vs Write-Through Cache
34. Client-Server Architecture
35. Microservices Architecture
36. Serverless Architecture
37. Event-Driven Architecture
38. Peer-to-Peer (P2P) Architecture
39. API Gateway Design
40. Service Discovery Mechanisms
- Scalability: https://lnkd.in/gpge_z76
- Latency vs Throughput: https://lnkd.in/g_amhAtN
- CAP Theorem: https://lnkd.in/g3hmVamx
- ACID Transactions: https://lnkd.in/gMe2JqaF
- Consistent Hashing: https://lnkd.in/gd3eAQKA
- Rate Limiting: https://lnkd.in/gWsTDR3m
- API Design: https://lnkd.in/ghYzrr8q
- Strong vs Eventual Consistency: https://lnkd.in/gJ-uXQXZ
- Synchronous vs. asynchronous communications: https://lnkd.in/gC3F2nvr
- REST vs RPC: https://lnkd.in/gN__zcAB
- Batch Processing vs Stream Processing: https://lnkd.in/g4_MzM4s
- Fault Tolerance: https://lnkd.in/dVJ6n3wA
- Consensus Algorithms: https://lnkd.in/ggc3tFbr
- Gossip Protocol: https://lnkd.in/gfPMtrJZ
- Service Discovery: https://lnkd.in/gjnrYkyF
- Disaster Recovery: https://lnkd.in/g8rnr3V3
- Distributed Tracing: https://lnkd.in/d6r5RdXG
- Top 15 Tradeoffs: https://lnkd.in/gnM8QC-z
- Horizontal vs Vertical Scaling: https://lnkd.in/gAH2e9du
- Databases: https://lnkd.in/gti8gjpz
- Content Delivery Network (CDN): https://lnkd.in/gjJrEJeH
- Domain Name System (DNS): https://lnkd.in/gkMcZW8V
- Caching: https://lnkd.in/gC9piQbJ
- Distributed Caching: https://lnkd.in/g7WKydNg
- Load Balancing: https://lnkd.in/gQaa8sXK
- SQL vs NoSQL: https://lnkd.in/g3WC_yxn
- Database Indexs: https://lnkd.in/gCeshYVt
- HeartBeat: https://lnkd.in/g4x7sMrF
- Circuit Breaker: https://lnkd.in/gCxyFzKm
- Idempotency: https://lnkd.in/gPm6EtKJ
- Database Scaling: https://lnkd.in/gAXpSyWQ
- Data Replication: https://lnkd.in/gVAJxTpS
- Data Redundancy: https://lnkd.in/gNN7TF7n
- Database Sharding: https://lnkd.in/gMqqc6x9
- Failover: https://lnkd.in/dihZ-cEG
- Proxy Server: https://lnkd.in/gi8KnKS6
- Message Queues: https://lnkd.in/gTzY6uk8
- WebSockets: https://lnkd.in/g76Gv2KQ
- Bloom Filters: https://lnkd.in/dt4QbSUz
- API Gateway: https://lnkd.in/gnsJGJaM
- Distributed Locking: https://lnkd.in/gRxNJwWE
- Checksum: https://lnkd.in/ghNc5pfn