System Design Problem

Design a Live Streaming Platform like Twitch

Commonly Asked By:AmazonGoogleMetaByteDance

  • Go live: Streamers broadcast live video/audio from OBS, mobile app, or webcam
  • Watch live: Viewers watch live streams with minimal delay (< 5 seconds glass-to-glass latency)
  • Live chat: Real-time chat alongside the stream (thousands of messages/sec for popular streams)
  • Stream discovery: Browse by category/game, recommended streams, search
  • Follow/Subscribe: Follow streamers for notifications; paid subscriptions for perks
  • VOD: Automatically save past broadcasts for on-demand viewing
  • Clips: Viewers create short clips (30-60 sec) from live streams
  • Emotes: Custom emoji/emotes per channel (subscriber-only emotes)
  • Stream quality: Adaptive bitrate: viewer selects or auto-adjusts quality
  • Raids/Hosts: Streamer redirects their audience to another channel
  • Moderation: Chat moderation tools (ban, timeout, slow mode, subscriber-only chat)
  • Monetization: Subscriptions, bits/donations, ads

High-level architecture of the live streaming platform, from streamer ingest through CDN delivery to viewers, with the chat system running in parallel.

Loading...