A Nice Problem to Have: Django Under Heavy Load
summary
When traffic crushes the site the first bottleneck is almost always the database: sessions, Celery results and messages can be ~80% of writes, reckless ORM use creates N+1s that select_related/prefetch_related often remove, and a single SSD temp partition + 20–30% boost can help. Start with New Relic + statsd/graphite for visibility, prefer surgical fixes that hit the 99/1 sweet spot, consider sharding or Redis for counters (watch race conditions), and remember 100ms → 4% revenue lift.
AI-written summary · about
chapters (19)
- 0:00Introduction
- 1:40Drinking from the Firehose
- 4:37Where to Start
- 7:12Sledgehammers
- 16:43OverQuerying
- 18:52Full Loops
- 19:49Single Queries
- 21:40Indices
- 23:32Multicolumn indexes
- 25:20Query Analyzer
- 27:27Tuning Your Database
- 30:01Sharding
- 32:04Third Major Strategy
- 36:00How Downstream Cache Works
- 37:21Going Beyond Django Cash
- 38:15Rattus
- 39:18Limitations
- 40:46chugging faster
- 41:21work with me
related talks
31mHigh Performance Django
28mThe life of a web request - techniques for measuring and improving Django application performance
47mBuilding Scalable Web Apps
47mHigh Performance Django at Ten: Old Tricks & New Picks
21mHigh-Availability Django
14mDatabase Performance at Scale for RoR Applications
45mCutting latency in half: What actually worked—and what didn’t
17mOff the Beaten Path: Exploring Unusual Roads to Django Performance
