Building maintainable Django projects: the difficult teenage years
summary
Ten years of a single Django codebase yields concrete fixes not slogans: a custom-event pattern that injects Vue components via teleport/portals into legacy pages, and using JSON script to pass view context to JS. Database tactics include setting Postgres statement_timeout in a custom DB wrapper plus a context manager, and routing slow pages through PG bouncer (e.g. limit to 2 real DB connections and 4 queued queries) to protect the cluster; use least-request load balancing for 100 ms vs 30 s handlers.
AI-written summary · about
chapters (10)
- 0:00Introduction
- 3:11Front-end interoperability
- 7:44Hybrid migration strategies
- 10:11Django and front-end data
- 11:34Slow legacy features
- 12:19PostgreSQL timeouts
- 14:25PG Bouncer for pooling
- 17:35Load balancing strategies
- 20:25Summary
- 20:45Q&A
related talks
01h 06mEffective Django
24mStumbling Through Django and How Not To
31m"Notes on Over-Engineering: A Project Post-Mortem"
53mDjango productivity tips and tricks
47mReal World Django Q&A
31mThis Old Pony: Working With Legacy Django Apps
23mThree Django Apps in a Trenchcoat: Writing an event management website with not a lot of time
53mDjango productivity tips and tricks
