System design playground
Interactive simulations of load balancing, caching, message queues and database replication. Change the settings, break things and watch what happens.
- Load balancer simulator: Route requests across three servers with round robin, least connections or weighted round robin. Crash a server and watch health checks take it out of rotation.
- Cache simulator: A cache-aside cache in front of a database: hits, misses, TTL expiry, LRU eviction and invalidation on write, with hit rate and database load measured as it runs.
- Message queue simulator: Producers, a bounded queue and a pool of consumers, with retries, exponential backoff, a dead-letter queue, backpressure and the difference between at-least-once and at-most-once delivery.
- Database replication simulator: A primary database and two read replicas with replication delay. Send reads to replicas, watch stale reads appear, and fail the primary to see what asynchronous and synchronous commit mean for a failover.