~/talk

Squeezing Django performance for 14.9 million users on WhatsApp

Talkat DjangoCon Europe 2023 · on Tuesday, 2023-05-30· at 10:25· Music Hall· [web-performance]
links:none on file
slides:none on file

Built a WhatsApp service called ContactNDoH that handles 14.9 million users and 850 million messages, backs a health‑check risk algorithm and ships results into the national data lake. Uses Django + Postgres + Django REST Framework as a REST API and solves scale problems with cursor pagination, timestamp indexes, a custom admin pagination that falls back to Postgres approximate counts and statement timeouts, plus Locust and Faker for load tests, Django Debug Toolbar and EXPLAIN ANALYZE to find slow queries, and tuning (log_min_duration_statement, PyPy, gunicorn); system stays responsive in production.

AI-written summary · about

  1. 0:00Introduction and background
  2. 4:23Contact NDOH project overview
  3. 7:57Database performance challenges
  4. 12:52API design with DRF
  5. 14:39Measuring and testing performance
  6. 21:46CPU and memory bottlenecks
  7. 23:54Q&A session
~/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.