~/talk

Would Your System Survive a Million Concurrent Players?

TalkinPolishat Confitura 2025 · 2025-09-19..09-20· [distributed-systems, microservices]
links:none on file
slides:none on file

Describes how Kahoot scaled its live-quiz backend to handle 1.4 million concurrent players by extracting the heavy answer-processing path from a Java monolith into microservices. It uses Couchbase for multi-region storage, Kafka with Kafka Streams for event propagation, and Google Cloud Storage as an event store (JSON files), employs event sourcing and a strangler-fig migration with dual-write staged rollouts (20→100%) plus observability, and adds aggregation to reduce write load; the new pipeline was validated in staged production tests.

AI-written summary · about

  1. 0:00Introduction
  2. 3:26Kahuta platform features
  3. 7:23System architecture and DB
  4. 9:29Scaling to million users
  5. 10:37Migrating to microservices
  6. 15:14New microservice design
  7. 20:45Data analysis and optimization
  8. 24:24Live game migration
  9. 28:16Strangler Fig pattern
  10. 32:20Testing and deployment
  11. 35:09Migration summary
  12. 37:35Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.