System Design Drill Day 15: Real-Time Chat and Live Order Tracking
How to design real-time chat and live tracking: polling vs SSE vs WebSockets, a Redis pub/sub backplane, sequence numbers and resync.

How to design real-time chat and live tracking: polling vs SSE vs WebSockets, a Redis pub/sub backplane, sequence numbers and resync.

How to design a URL shortener: base62 codes, ID generation strategies, 301 vs 302 redirects, Redis caching and async click analytics.

How to design a notification service with per-channel workers, priority queues, preferences, dedup and signed webhook retries.

How distributed locks work with Redis SET NX EX, why leases and fencing tokens matter, and where locks fit in a checkout.

The main rate-limiting algorithms, how to run them atomically across servers with Redis and Lua, and when to fail open or closed.

Why slow work belongs on a queue, what at-least-once delivery means, and how retries and idempotency keep background jobs safe.
