GET /api/v2/video/236
HTTP 200 OK Vary: Accept Content-Type: text/html; charset=utf-8 Allow: GET, PUT, PATCH, HEAD, OPTIONS
{ "category": "PyCon US 2010", "language": "English", "slug": "pycon-2010--django-deployment-workshop", "speakers": [ "Jacob Kaplan-Moss" ], "tags": [ "pycon", "pycon2010" ], "id": 236, "state": 1, "title": "Django Deployment Workshop", "summary": "", "description": "Django Deployment Workshop\n\nPresented by Jacob Kaplan-Moss\n\nSo you've written a Django site... now what? Writing the application is just\nthe beginning; now you've got to put it into production! In this hands-on\nworkshop we'll walk through the creation of a full Django deployment\nenvironment running on a cluster of (virtual) machines.\n\nThis class will introduce students to a wide variety of technologies,\nincluding Amazon's EC2 and S3, Fabric, Varnish, nginx, mod_wsgi, memcached,\nPostgreSQL, pgpool, pg_standby, and more.\n\nBy the end of the class, each student will have created an environment\nfeaturing:\n\n * Multiple levels of caching and load balancing.\n * Multiple web application servers.\n * Shared media servers.\n * Redundant replicated database servers.\n * Separate caching servers.\n\nWe'll create this whole stack on Amazon EC2 virtual machines, so students will\nbe able to take home a complete copy of all the deployment configuration for\nfuture review at their leisure.\n\nNote: the example application used in this class with be a Django site, and\nthe class assumes at least a moderate comfort level with Django. However, the\ntools and techniques apply just as well to other Python web frameworks, so\nusers of other tools will likely be able to follow along fairly easily.\n\n# Intended Audience\n\nIntermediate to advanced Django users with sites nearing or in production.\nPython developers using other web frameworks will likely be able to follow\nalong -- see the note in the summary, above.\n\n# Class Outline\n\n * Introduction: the deployment question\n * Application server: mod_wsgi\n * Database server: PostgreSQL\n * Automated deployment with Fabric\n * Multiple web servers; load balancing with nginx\n * Adding memcached\n * Database connection middleware: pgpool\n * Database redundancy: warm standby\n * Upstream caching: Varnish\n * Final load testing: how'd we do?\n\n# Requirements\n\nStudents will need a computer and Amazon EC2 and S3 accounts, and will be\nasked to familiarize themselves with the process of starting and stopping EC2\nvirtual machines before the class.\n\n[](\n10/tutorials/kaplanmoss_django)\n\n", "quality_notes": "", "copyright_text": "Creative Commons Attribution-NonCommercial-ShareAlike 3.0", "embed": "", "thumbnail_url": "", "duration": null, "video_ogv_length": null, "video_ogv_url": null, "video_ogv_download_only": false, "video_mp4_length": null, "video_mp4_url": "", "video_mp4_download_only": false, "video_webm_length": null, "video_webm_url": null, "video_webm_download_only": false, "video_flv_length": null, "video_flv_url": null, "video_flv_download_only": false, "source_url": "", "whiteboard": "", "recorded": "2010-02-19", "added": "2012-02-23T04:20:00", "updated": "2014-04-08T20:28:28.106" }