CodeBaobab
COURSE 10 OF 13

Scale, Performance, and Consistency

Principle 3: Architect for Scalability

Background reading
Free course preview

Principle 3: Architect for Scalability

Scalability is the ability to handle a changing workload without unacceptable loss of performance or control over cost.

A growing dataset may stress storage, while a burst of concurrent jobs stresses processing capacity. Those pressures can require different changes.

Find the limiting resource and examine how the workload uses it. Adding workers will not fix a component that remains a shared bottleneck.

Identify what is growing: records, requests, concurrent jobs, or state. Add capacity where that growth creates a bottleneck rather than scaling every component equally.

Continue learning

Continue with Pro

Get Pro on codebaobab.com.

See Pro plans
Complete course

What you will learn next

  1. 01Distributed Systems, Scalability, and Designing for Failure
  2. 02Eventual Versus Strong Consistency
  3. 03Distributed joins
  4. 04Partitioning of Key-Value Data
  5. 05Coordinating work across machines
  6. 06Review
  7. 07References