Initial Design of Quora

Transform the Quora requirements into a high-level design.

Initial design

The initial design of Quora will be composed of the following building blocks and components:

  • Web and application servers: A typical Quora page is generated by various services. The web and application servers maintain various processes to generate a webpage. The web servers have manager processes and the application servers have worker processes for handling various requests. The manager processes distribute work among the worker processes using a router library. The router library is enqueued with tasks by the manager processes and dequeued by worker processes. Each application server maintains several in-memory queues to handle different user requests. The following illustration provides an abstract view of web and application servers:

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