Performance and Fault Tolerance for the Netflix API - g33ktalk Audio
Ben Christensen speaking on the Netflix API
We were at Box.net this week for the SV Cloud Computing group to hear an awesome talk from Netflix engineer Ben Christensen on the massive improvements Netflix has made to their API infrastructure over the past year or so. The Netflix API currently serves up to 1.6 billion requests/day (!) and supports more than 800 different connected devices. Their API architecture is designed for resiliency, and you'll hear Ben talk about exactly how they achieve that - plus, some other very interesting info on how they've recently re-architected their API for easy of maintenance and maximum performance.
The Netflix API receives over a billion requests a day which translates into multiple billions of calls to underlying systems in the Netflix service-oriented architecture. These requests come from more than 800 different devices ranging from gaming consoles like the PS3, XBox and Wii to set-top boxes, TVs and mobile devices such as Android and iOS.
This presentation will describe how the Netflix API supports those devices and achieves fault tolerance in a distributed architecture while depending on dozens of systems which can fail at any time. It will also explain how a new system design allows each device to optimize API calls to their unique needs and leverage concurrency on the server-side to improve their performance.
Ben Christensen is a software engineer on the Netflix API Platform team responsible for fault tolerance, performance, architecture and scale while enabling millions of customers to access the Netflix experience. Specializing in Java since the 90s and through years of web and server-side development Ben has gained particular interest and skill in building maintainable, performant, high-volume, high-impact systems. Prior to Netflix, Ben was at Apple making iOS apps and media available on the iTunes store.