Microservices Architecture of Netflix
Netflix’s architectural style is built as a collection of services. This is known as microservices architecture and this power all of the APIs needed for applications and Web apps. When the request arrives at the endpoint it calls the other microservices for required data and these microservices can also request the data from different microservices. After that, a complete response for the API request is sent back to the endpoint.
In a microservice architecture, services should be independent of each other. For example, The video storage service would be decoupled from the service responsible for transcoding videos.
How to make microservice architecture reliable?
- Use Hystrix (Already explained above)
- Separate Critical Microservices:
- We can separate out some critical services (or endpoint or APIs) and make it less dependent or independent of other services.
- You can also make some critical services dependent only on other reliable services.
- While choosing the critical microservices you can include all the basic functionalities, like searching for a video, navigating to the videos, hitting and playing the video, etc.
- This way you can make the endpoints highly available and even in worst-case scenarios at least a user will be able to do the basic things.
- Treat Servers as Stateless:
- To understand this concept think of your servers like a herd of cows and you care about how many gallons of milk you get every day.
- If one day you notice that you’re getting less milk from a cow then you just need to replace that cow (producing less milk) with another cow.
- You don’t need to be dependent on a specific cow to get the required amount of milk. We can relate the above example to our application.
- The idea is to design the service in such a way that if one of the endpoints is giving the error or if it’s not serving the request in a timely fashion then you can switch to another server and get your work done.
System Design Netflix | A Complete Architecture
Designing Netflix is a quite common question of system design rounds in interviews. In the world of streaming services, Netflix stands as a monopoly, captivating millions of viewers worldwide with its vast library of content delivered seamlessly to screens of all sizes. Behind this seemingly effortless experience lies a nicely crafted system design. In this article, we will study Netflix’s system design.
Important Topics for the Netflix System Design
- Requirements of Netflix System Design
- High-Level Design of Netflix System Design
- Microservices Architecture of Netflix
- Low Level Design of Netflix System Design
- How Does Netflix Onboard a Movie/Video?
- How Netflix balance the high traffic load
- EV Cache
- Data Processing in Netflix Using Kafka And Apache Chukwa
- Elastic Search
- Apache Spark For Movie Recommendation
- Database Design of Netflix System Design
Contact Us