Scaling Systems from Zero to Millions of Users

Description

A comprehensive guide to designing scalable systems, covering topics like load balancing, caching, database replication, sharding, CDN usage, and stateless architecture to support millions of users efficiently.
Eladio Rocha
Quiz by Eladio Rocha, updated 17 days ago
Eladio Rocha
Created by Eladio Rocha 18 days ago
1
0

Resource summary

Question 1

Question
What is the role of DNS in the request flow to a web application?
Answer
  • Routes HTTP requests to the load balancer.
  • Provides the IP address of the requested domain.
  • Caches static content for faster delivery.
  • Directly manages connections between users and servers.

Question 2

Question
Why is JSON a commonly used API response format for mobile applications?
Answer
  • It supports relational joins.
  • It requires less storage space than XML.
  • It is simple and easy to parse.
  • It is compatible with relational databases by default.

Question 3

Question
What is a primary disadvantage of vertical scaling for databases?
Answer
  • It does not improve database redundancy.
  • It requires splitting data into multiple shards.
  • It increases latency for read operations.
  • It prevents adding more memory to the server.

Question 4

Question
In the context of sharding, what is the function of a sharding key?
Answer
  • It defines relationships between tables in a database.
  • It determines how data is distributed across shards.
  • It improves the cache hit ratio for frequently accessed data.
  • It ensures low latency for all database queries.

Question 5

Question
How does a load balancer improve system reliability?
Answer
  • By storing session data for web servers.
  • By caching database queries for faster responses.
  • By routing traffic to available servers when one fails.
  • By replacing offline servers with new hardware.

Question 6

Question
Which caching strategy is most suitable for frequently accessed data that changes rarely?
Answer
  • Write-through cache.
  • Read-through cache.
  • Write-behind cache.
  • Cache-first strategy.

Question 7

Question
What is the primary advantage of a stateless web tier?
Answer
  • It reduces the need for load balancers.
  • It simplifies scaling and improves fault tolerance.
  • It allows servers to store session data locally.
  • It requires fewer web servers to handle traffic.

Question 8

Question
What challenge does a stateful architecture introduce when scaling horizontally?
Answer
  • Increased dependency on CDN services.
  • All user requests must be routed to the same server.
  • Difficulty in maintaining database consistency.
  • Inefficiency in handling write-heavy traffic.

Question 9

Question
What is the purpose of geoDNS in a multi-data center setup?
Answer
  • To replicate data across different regions.
  • To cache data closer to the user.
  • To route traffic to the nearest data center.
  • To load balance traffic between multiple servers.

Question 10

Question
What is a critical challenge in implementing a multi-data center setup?
Answer
  • Managing server-side caching policies.
  • Synchronizing data across data centers.
  • Adding redundancy to the load balancer.
  • Handling high write-to-read traffic ratios.

Question 11

Question
What is the primary function of a message queue in system design?
Answer
  • To handle join operations in sharded databases.
  • To distribute and decouple asynchronous tasks.
  • To maintain consistency across data centers.
  • To balance traffic between database shards.

Question 12

Question
How does sharding improve database scalability?
Answer
  • By adding redundancy to the data tier.
  • By distributing data across multiple servers.
  • By reducing the number of write operations.
  • By enabling dynamic joins across databases.

Question 13

Question
What is a common approach to mitigating the “celebrity problem” in sharded databases?
Answer
  • Increasing the CPU capacity of affected shards.
  • Allocating specific shards to high-traffic users.
  • Using vertical scaling to handle additional load.
  • Implementing sticky sessions at the web tier.
Show full summary Hide full summary

Similar

Scalable Systems and Database Redundancy
Eladio Rocha
CAP Theorem and Database Trade-offs
Eladio Rocha
Data Lakes and Big Data Systems
Eladio Rocha
Back-of-the-Envelope Estimation
Eladio Rocha
Modern Scalable Databases
Eladio Rocha
Caching Strategies for High-Performance Systems
Eladio Rocha
Scalable System Architectures
Eladio Rocha
EJES BASICOS DE LA ATENCION A LA PRIMERA INFANCIA DESDE UN ENFOQUE DIFERENCIAL
karol bustos tovar
1_EJES BASICOS DE LA ATENCION A LA PRIMERA INFANCIA DESDE UN ENFOQUE DIFERENCIAL
karol bustos tovar
GCSE AQA Chemistry - Unit 3
James Jolliffe