NOTE: all info on patterns was taken from the book 'Design Patterns Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlisside (1994)'
flowchart LR
node1([1])-->node2([2])-->node3([3])
flowchart LR
node1([1])<-->node2([2])<-->node3([3])
- Client Server Model
- Network Protocol
- Storage
- Latency and Throuput
- Availability
- Caching
- Proxies
- Load Balancers
- Hashing
- Relational Database
- Key-Value Stores
- Specialized Storage Paradigms
- Replication and Sharding
- Leader Election
- Peer-to-Peer Networks
- Polling and Streaming
- Configuration
- Rate Limiting
- Logging and Monitoring
- Publish/Subscribe Pattern
- MapReduce
- Security and HTTPS
- API Design