Algorithms
Pick a group to see its algorithms.
Rate limiters5 to explore
How a service decides which requests to let through when clients send too many. Each one is shown with two users and an attacker, shared and per-user limits, and sizing from daily active users.
- Token Bucket
- Leaky Bucket
- Fixed Window Counter
- Sliding Window Log
- Sliding Window Counter
Load balancers9 to explore
How a load balancer chooses which server gets each request, and what each choice does when servers or requests differ.
- Round Robin
- Weighted Round Robin
- Least Connections
- Weighted Least Connections
- Least Response Time
- IP Hash
- Random
- Power of Two Choices
- Resource Based
Data partitioning6 to explore
Sharding: how data is split across database shards or cache nodes, which shard each key lives on, and how much has to move when a node is added or removed.
- Sharding
- Hash Partitioning
- Range Partitioning
- Directory Sharding
- Consistent Hashing
- Rendezvous Hashing