Hotstar once streamed the Cricket World Cup final to ~59 MILLION people at the same second.
That’s not a typo. ~59,000,000 concurrent viewers – a world record.
How does a system survive that? A few things Hotstar actually does:
β Plan for the “tsunami,” not the average. The scary moment isn’t steady load β it’s a wicket falling, when millions refresh and rejoin in the same few seconds. They design for that spike, not the baseline.
β Pre-provision capacity. Reactive autoscaling is too slow β servers take minutes to boot, spikes happen in seconds. So Hotstar predicts concurrency and scales up BEFORE the match, keeping warm capacity ready.
β Segment + multi-CDN fan-out. The live feed is chopped into tiny 2β6s chunks pushed to CDN edges across multiple providers. Millions pull from the nearest edge, not the origin. One encode, served to millions.
β Graceful degradation (“panic mode”). Under extreme load, Hotstar sheds non-essential features and lowers quality to keep the core stream alive. A slightly lower-res match beats a crashed one.
β Trade latency for stability. Live runs ~10β30s behind real-time on purpose β that buffer absorbs the spikes.
The big lesson: at this scale you don’t fight the load head-on. You predict it, pre-provision for it, push everything to the edge, and degrade gracefully instead of failing.
You can build a live streaming design β origin, transcoding, CDN edge β and push traffic through it to watch where it strains π (free, no signup)
prepgrind.xyz
What would you reach for first to handle 50M+ concurrent viewers?
λ΅κΈ λ¨κΈ°κΈ°