Scaling: from 0 to 20 million users
summary
SofaScore runs PHP 8.1 with Symfony, serves 20 million monthly active users generating ~180 billion requests and ~600 TB monthly, and evolves from single Apache box to AWS auto‑scaling, then back to colocated machines. Caching moves from memcached and full‑page caches to Varnish request coalescing and a two‑layer/sharded Varnish farm, cutting backend load; MongoDB gets migrated to PostgreSQL via timestamped sync script in about a week; deployment uses Docker, Kubernetes and NATS for realtime, and a homegrown purgatory cache invalidation library.
AI-written summary · about
chapters (10)
- 0:00Start
- 5:13Cache Stampede problem
- 12:21Request coalescing
- 15:48mongoDB
- 16:50Why postgres?
- 29:11Replace AWS stuff
- 32:13Optimizations
- 33:26Dedicated + VPS
- 38:47kubernetes
- 40:56Take home
related talks
47mScaling: from 0 to 25 million users
38mMoneyball Generation: Sports & Tech
18mHigh-Load Systems: Challenges in Social Network Development
56mLarge scale websites performance optimisation tricks
27mScaling for the Expected and Unex
47mFrom Legacy to High-Load: Evolution of a Web Application
45mPHP is the king ...
44mIntroduction to application scaling
