- Extra Resources
- https://github.com/talkpython/fast-python-webapps-with-cdns
Course Summary
You’re ready to launch your Python app. You want it to FLY of course. Static resources can be a huge portion of that equation. Leveraging a CDN could save you over 75% of your server load and make it way faster. This course with show you how in a step by step guide. It’s way easier than you think.
It's not just server-side Python performance that matters
Building a high performance Python web app requires many key elements. First you likely focus on your Python code and making the database fast. But on my web page requests, that Python HTML response is a small, although important, portion. It’s common to have 30, 40, 50, or more requests per page. In production, the frequent guidance is to host these behind nginx or similar server. Often that is enough. But by bringing a CDN into the mix to globally replicate and localize all those requests can seriously improve the perceived speed of your app for a global user-base. But did you know that these static resources can put a massive load on your server too? This course will give you a step by step guide with live code demos on how to incorporate a CDN (Bunny CND specifically) with a Flask application. You will also see the before and after performance stats from Talk Python’s web infrastructure from last year’s Black Friday week of traffic.What will you learn?
In this course, you will:- See how CDNs work and interplay with your web application
- Leverage the CDN to deliver globally-scaled, geo-replicated content
- Use the CDN for your static content (images, css, javascript, etc.)
- Avoid stale cache content while 100% caching static content on the CDN and clients
- Host large, user-generated content (audio, video, documents, etc.)
- Use storage zones to serve large content globally
- Debug issues with CDN content at the CDN level, web app level, and browser level
- Test user-percieved performance for your web app (full page loads, not just Python paths)
- Replace Google fonts with GDPR / privacy friendly alternatives
- And lots more
- View the full course outline.
Who is this course for?
For anyone who has or is building a Python-based we application and wants the best experience for their users.As for prerequisites, we assume:
- Basic familiarity with the Python programming language and core tools (e.g. pip)
- That you know how web applications work and are familiar with HTTP and HTML
- We do use Flask, but you don't need a deep understanding of it to be successful