Scaling Techniques

"Scaling Up" vs. "Scaling Out"

  1. Scaling up: improving capacity, e.g., increasing memory, upgrading CPUs, or replacing network modules.

  2. Scaling out: expanding the distributed system by deploying more machines

Scaling Out

In particular, "scaling out" includes 3 techniques:

  1. Hiding communication latencies

    • asynchronous communication

    • server check form vs. client check form

  2. Partitioning and distribution

    • E.g., DNS

    • tree of domains and zones

  3. Replication

    • Caching

    • Leads to consistency problems

    • OK for Web users but not OK for electronic stock exchanges and auctions

Last updated