41. Design Live Streaming at Scale (Live Cricket)
1
The interview prompt2
41.1 What do you ask first?3
41.2 How big is this, really?4
41.3 What are the doors?5
41.4 What do we store?6
41.5 What does the whole system look like?7
41.6 How do live ingest and segmenting work?8
41.7 How does the CDN cope at peak?9
41.8 How do you pre-scale for spikes?10
41.9 How does live score sync work?11
41.10 What would you say in the last five minutes?12
Score yourself13
Variations to practise14
Sources15
Code lab41. Design Live Streaming at Scale (Live Cricket)
41.4 What do we store?
3 min read+10 XP
live segments object storage / origin, short retention (+ DVR window, e.g. 2 hours)
playlists rolling: the latest N segments, rewritten every segment
matches match_id, feeds, start time, status
entitlements user → subscription / free access (cached heavily before the match)
score events match_time, event, score text (from the official data feed)
Interviewer pushback:
- "Why does the score carry match_time?" → So the app can show the score for the moment the viewer is watching, not for the real present, which may be 20 seconds ahead (41.9).
Memory code: "Sign the playlist once; let the edge check it; stamp every score with match time."