High-level Design of a Distributed Cache

In this lesson, we’ll learn to design a distributed cache. We’ll also discuss the trade-offs and design choices that can occur while we progress in our journey towards developing a solution.


Let us start by understanding the requirements of our solution.


The following are the functional requirements:

  • Insert data: The user of a distributed cache system must be able to insert an entry to the cache.
  • Retrieve data: The user should be able to retrieve data corresponding to a specific key.

Level up your interview prep. Join Educative to access 70+ hands-on prep courses.