There has to be an interface to
search a video
play a movie
upload video for the emplyoees
We have to have api gateway that does the authetification. Netflix is based on a lot of microservices and data stream due to its massive scale.
I would divide it into two paths:
upload a new video path. AT netflix we don't generate a lot of content every day. So the write throughput is low
The second part is reading path, which is massive. In order to minimize latency we use CDN foreach country. So the round trips are as short as possible. The
Kafka for handling events. Diffrent topics for diffrent downstream data consumers. WE may have search consumer. analytics consumer. we may have session service downs tream top. subscriptin topic. The more user the more brokers and partitions we add.
Videos are streamed in chunks via HTTP TCP protocol to user. We want to guarentee the order or bideo chunks.
The upload is also assured by multipart upload. The writes are guereeted via multipart uploads.
The robustness and reliability are guarenteed by s3 replication and we have high level of reliability.