GET /api/v2/video/2209
HTTP 200 OK Vary: Accept Content-Type: text/html; charset=utf-8 Allow: GET, PUT, PATCH, HEAD, OPTIONS
{ "category": "PyCon AU 2013", "language": "English", "slug": "limiting-execution-time-through-interrupt-driven", "speakers": [ "Erik van Zijst" ], "tags": [], "id": 2209, "state": 1, "title": "Limiting Execution Time Through Interrupt Driven Programming", "summary": "This talk explores the challenges of ensuring responsiveness of applications under varying conditions like suddenly increased load, code regressions and problematic user data that reveal code paths with unusually high time complexity.\r\n\r\nI'll be looking at interrupt-driven techniques to help bring the 95 percentile of the response times of your application closer to the (usually much lower) mean.\r\n\r\nIn this talk, we'll go beyond traditional tricks like caching, sharding and data denormalization and instead look at tools that can interrupt execution of overly expensive code paths, such that you can guarantee an upper bound in response time.\r\n\r\nInterruptingcow and django-timelimit will be some of the tools that will be covered in this talk.\r\n\r\nThe context for most of this is web applications, and I'll be drawing many examples from our ongoing experiences with running and scaling Bitbucket, which is entirely written in Python.\r\n\r\nHaving said that though, many of the tools and techniques demonstrates will apply just as well to other types of applications and situations.\r\n", "description": "", "quality_notes": "", "copyright_text": "CC-BY-SA", "embed": "<object width=\"640\" height=\"390\"><param name=\"movie\" value=\";hl=en_US\"></param><param name=\"allowFullScreen\" value=\"true\"></param><param name=\"allowscriptaccess\" value=\"always\"></param><embed src=\";hl=en_US\" type=\"application/x-shockwave-flash\" width=\"640\" height=\"390\" allowscriptaccess=\"always\" allowfullscreen=\"true\"></embed></object>", "thumbnail_url": "", "duration": 30, "video_ogv_length": null, "video_ogv_url": null, "video_ogv_download_only": false, "video_mp4_length": null, "video_mp4_url": "", "video_mp4_download_only": true, "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": "2013-07-06", "added": "2013-07-10T12:02:27", "updated": "2014-04-08T20:28:26.280" }