Copy-Evaluation

Fulfilling requirements

Interviewer: How do you think that the proposed system fulfilling all the requirements?

Candidate: Our main requirements are smooth streaming (low latency), availability, and reliability. Let’s discuss them one by one.

  1. Low Latency/Smooth streaming can be achieved through:

    • Geographically distributed cache servers.
    • High bandwidth
    • Using a distributed cache management system
    • Utilizing content delivery networks (CDNs) which make heavy use of caching and mostly serve videos out of memory. It distributes the service spatially relative to the client. Moreover, the load on the cache server should be distributed to maximize user performance.
  2. Scalability: Our design is capable of handling an average level of scaling. i.e., Certain components (like databases) will require restructuring if we scale them to cater to the needs of increasing load. Also, for disaster recovery, the existing design will have to be updated.

  3. Availablity: The system can be made available by replicating data to as many servers as possible to avoid a single point of failure. We can recover from failed servers by spanning a new virtual machine, and restoring the state.

Create a free account to access the full course.

By signing up, you agree to Educative's Terms of Service and Privacy Policy