AWS Case study : Netflix

Netflix on AWS:

Nithish Kumar

--

Netflix is the world’s leading internet television network, with more than 100 million members in more than 190 countries enjoying 125 million hours of TV shows and movies each day. Netflix uses AWS for nearly all its computing and storage needs, including databases, analytics, recommendation engines, video transcoding, and more — hundreds of functions that in total use more than 100,000 server instances on AWS.
Source: AWS

Netflix make heavy use of AWS spot instances to bid on servers at a cheaper price so that they can convert videos into different formats. By engaging in compute rental arbitrage they are able to run their business cost effectively while keeping video quality high and customers happy.

About Netflix:

It is the number one video streaming service on the entire planet as of 2018 and the amount of infrastructure it takes to serve video continuously to over 190 countries with minimal latency (no lag) requires intensive compute time. The cost to run your own data center involves paying for a location, construction, staffing, security & disaster recovery across the globe. Managing and fronting the cost for physical data centers is a very costly and time consuming endeavor. Renting this capacity, virtually, from AWS is a faster way to get to market and a cheaper way to run a cloud business.

“ The Best manager figure out how to get great outcomes by setting the appropriate context, rather than by trying to control their people … ”

Netflix was one of the very first companies to move their infrastructure over to AWS, and have since pioneered many of the common architectural patterns for designing products on AWS. Since moving the majority of their infrastructure to AWS, they have been able to design a system where it is cheaper to serve video as it continues to acquire more and more customers. This results in massive profits for the company. It is able to do this by leveraging AWS services without having to build and manage it themselves.

AWS YouTube

Netflix estimates that it uses around 700 microservices to control each of the many parts of what makes up the entire Netflix service: one microservice stores what all shows you watched, one deducts the monthly fee from your credit card, one provides your device with the correct video files that it can play, one takes a look at your watching history and uses algorithms to guess a list of movies that you will like, and one will provide the names and images of these movies to be shown in a list on the main menu. And that’s the tip of the iceberg. Netflix engineers can make changes to any part of the application and can introduce new changes rapidly while ensuring that nothing else in the entire service breaks down.

And when two applications do need to talk to each other, they use an application programming interface (API) — a tightly-controlled set of rules that both programs can handle. Developers can now make many changes, small or huge, to each application as long as they ensure that it plays well with the API. And since the one program knows the other’s API properly, no change will break the exchange of information.

Now, the question is Where do they run all of these microservices ? 🤔

Netflix made a courageous decision to get rid of maintaining their own servers and move all of their stuff to the cloud - i.e. run everything on the servers of someone else who dealt with maintaining the hardware while Netflix engineers wrote hundreds of programs and deployed it on the servers rapidly. The someone else they chose for their cloud-based infrastructure is Amazon Web Services (AWS).

NETFLIX ARCHITECTURE

Netflix Realizes Multi-Region Resiliency Using Amazon Route 53

What happens when you need to move 89 million viewers to a different AWS region? Netflix’s infrastructure, built on AWS, makes it possible to be extremely resilient, even when the company is running services in many AWS Regions simultaneously. In this episode of This is My Architecture, Coburn Watson, director of performance and reliability engineering at Netflix, walks through the company’s DNS architecture — built on Amazon Route 53 and augmented with Netflix’s Zuul — that allows the team to evacuate an entire region in less than 40 minutes.
Source: AWS

Supporting Many Devices

The huge amount of codec and bit rate combinations on Netflix means “having to encode the same title 120 different times before it can be delivered to all streaming platforms”.

Although Netflix uses adaptive bit rate streaming technology to adjust the video and audio quality to match the customer’s download speed, they also provide users the ability to choose the quality of video on its website.
You can watch instantly from any Internet-connected device that offers a Netflix app, such as a computer, gaming console, DVD or Blu-ray player, HDTV, set-top box, home theatre system, phone or tablet.

They support every title in the following Codecs with different bit rates to make them work on device and connection.

  • Video — VC-1, H.264 (AVC), VC-1, H.263, H.265 (HEVC)
  • Audio — WMA, Dolby Digital, Dolby Digital Plus, AAC and Ogg Vorbis

Netflix Open Connect CDN

The Netflix Open Connect CDN is provided for larger ISPs that have over 100,000 subscribers. A specially built low power high storage density appliance caches Netflix content within the ISPs’ data centers to reduce internet transit costs. This appliance runs the FreeBSD operating system, nginx and the Bird Internet routing daemon.

Hope it will help u to know some thing about how Netflix is using AWS as it backend …
🤝 Thanks for reading !!!
👋 See you in the next blog …

…. Signing Off ….

--

--