Evaluation of Quora’s Design
Evaluate the Quora System Design by assessing its compliance with non-functional requirements like scalability and performance. Learn how vertical sharding and varied consistency models address specific data needs. Define essential disaster recovery mechanisms, including remote backups and restoration strategies, to ensure system durability.
We'll cover the following...
Requirements compliance
We have implemented various techniques to meet functional requirements. Now, let's evaluate how the design fulfills non-functional requirements:
Scalability: The system scales effectively using
. These powerful machines handle in-memory caching, queueing, and routing. Their uniformity simplifies horizontal scaling. For the database, we use vertical sharding to distribute load across MySQL servers. To minimize complexpowerful and homogeneous service hosts Quora now uses Amazon EC2 instances with 32 cores, a shared 20 MB cache, and high network throughput. joinqueries, related tables are placed in the same ...