years back i watched this video (https://t.co/Bdqbe39uRy) and it randomly popped up on my feed again, so thought of sharing it. it's about how Hotstar handled massive cricket traffic.
- 25.3M concurrent viewers.
- 1M requests/sec.
- 10 TB/s of video bandwidth.
when things get close to the limit, panic mode + graceful degradation kicks in. non-critical stuff gets reduced or throttled while critical services keep running.
the mindset i liked most: don't wait for millions of users to break your system. break it yourself first.
they also used chaos engineering to simulate things breaking.
AZ failures, network issues, database problems, latency spikes, service failures.
the goal was simple:
find the bottleneck before the actual match finds it for you.
reactive autoscaling wasn't enough. when millions of users suddenly join, waiting 5-6 minutes for new instances isn't exactly useful. so Hotstar used expected concurrency + request rate to pre-scale before the traffic actually arrived.
the part that caught my attention was Project HULK.
Hotstar built their own massive load testing setup to basically attack their infrastructure before the actual match.
3,000+ machines across 8 AWS regions.
they recreated real traffic, sudden spikes, latency and failures.
the part that caught my attention was Project HULK.
Hotstar built their own massive load testing setup to basically attack their infrastructure before the actual match.
3,000+ machines across 8 AWS regions.
they recreated real traffic, sudden spikes, latency and failures.
reactive autoscaling wasn't enough.
when millions of users suddenly join, waiting 5-6 minutes for new instances isn't exactly useful.
so Hotstar used expected concurrency + request rate to pre-scale before the traffic actually arrived.
they also used chaos engineering to simulate things breaking.
AZ failures, network issues, database problems, latency spikes, service failures.
the goal was simple:
find the bottleneck before the actual match finds it for you.
when things get close to the limit, panic mode + graceful degradation kicks in.
non-critical stuff gets reduced or throttled while critical services keep running.
the mindset I liked most:
dont wait for millions of users to break your system. break it yourself first.
watched this video expecting a normal layoff story and ended up listening to one of the most knowledgeable engineers ive seen explain infra and systems so casually. crazy.
@Rushu_Tushu because SMTP was designed as a decentralized protocol. but it doesnt send the mail right away theres a 5 sec(which you can increase till 30 sec if i remember well) holding state during which you can undo send