forked from pyvideo/data
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathhealthy-webapps-through-continuous-introspection.json
More file actions
26 lines (26 loc) · 2.67 KB
/
healthy-webapps-through-continuous-introspection.json
File metadata and controls
26 lines (26 loc) · 2.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{
"alias": "video/1304/healthy-webapps-through-continuous-introspection",
"category": "EuroPython 2012",
"copyright_text": "Standard YouTube License",
"description": "Every application has its hotspots \u2013 small portions of code that consume\nconsiderably more resources than all of the other code combined. Django\napps are no different. Some pages, invoked with the just the right, or\nwrong input, can bring a server to its knees, hogging the CPU and taking\nmany seconds, or in extreme cases even minutes to render. By keeping\nworkers tied up, the whole system can then become slow to respond, or\ncollapse altogether. Many webservers have a crude built-in failsafe to\nprevent this. They automatically kill workers that fail to complete\ntheir requests in time. As a result, you may not fully appreciate, or\nindeed realize at all that you are routinely serving 500 pages, denying\nusers access to your service, or leaving uncommitted database\ntransactions \u2013 possibly even slowly corrupting data. Workers killed by\nforce leave virtually no forensic traces and so even when issues are\nsuspected, it\u2019s hard to pin them down. The cause behind these hotspots\ncan be poorly generated SQL queries from the ORM, an algorithm with\nnon-linear complexity, excessive disk or network IO, or lock contention\nin the database \u2013 to name just a few. Oftentimes these problems escape a\ndeveloper\u2019s attention, as dev and test environments simply don\u2019t have\nthe dataset, level of concurrency or sheer size of the real thing. In\nthis talk we\u2019ll address the challenges of tuning your Django app with\ncontinuous automatic runtime inspection tools, including homegrown\nDogslow. We\u2019ll uncover the pages that consume disproportionate amounts\nof time and cycles to complete and the pages that get killed altogether.\nWe\u2019ll discuss several ways to help you identify and eliminate the\nhotspots, both passively through monitoring exclusively, as well as\nactively by selectively interrupting workers before they get killed and\nexamine how to effectively interpret the automatically collected\nforensic evidence.\n",
"duration": null,
"id": 1304,
"language": "eng",
"quality_notes": "",
"recorded": "2012-07-05",
"slug": "healthy-webapps-through-continuous-introspection",
"speakers": [
"Nicolas Venegas"
],
"summary": "[EuroPython 2012] Nicolas Venegas - 4 JULY 2012 in \"Track Spaghetti\"\n",
"tags": [],
"thumbnail_url": "http://i.ytimg.com/vi/yxALwwDyWoA/hqdefault.jpg",
"title": "Healthy webapps through continuous introspection",
"videos": [
{
"length": 0,
"type": "youtube",
"url": "http://www.youtube.com/watch?v=yxALwwDyWoA"
}
]
}