Rating is available when the video has been rented.
This feature is not available right now. Please try again later.
Published on Oct 16, 2012
At the Surge 2010 keynote, we described an emerging breed of web-facing applications that exhibited data-intensive real-time semantics (semantics we dubbed "DIRT"). Now, two years later, the first generation of these DIRTy applications have been deployed into wide-scale production, and we have experienced first-hand the new challenge that they present: the explosiveness of demand of the social web but with the constraints of a real-time system—and all via brittle, failure-prone mobile networks. In this talk, we will describe our experiences as the server-side infrastructure provider for one such application, Voxer—a popular push-to-talk mobile app. We will describe how we debugged latency-inducing issues at all layers of the stack: from the bowels of the operating system (I/O, networking, CPU scheduling) through platform (node.js, Erlang/Riak) and into the application. We will describe some of the new challenges that are posed by asynchronous, event-oriented systems like node.js—especially when deployed on mobile applications. Finally, we will describe some of the debugging and visualization technology that we have developed to help us better understand and diagnose these systems—and demonstrate their efficacy on actual production problems.