Congested networks & over‐loaded servers NN
notice (e.g., Slashdot effect, flash crowd, DDOS, etc.) inncdiahly popularity
(Web) Caching to the rescue
“Web cache hierarchy”

Web caching - what if cache crashes?
flood of requests

Single, shared caching machine per group of users
Web proxy, proxy server

Reverse proxy, Web accelerator

Content‐delivery network (CDN)
Place content as close as possible to user to reduce latency. Challenge is how to devise content

Web caching trade‐offs
Problem: Mapping objects to caches
Attempted solution: Use hashing (mapping objects to cache)
h(u) = (7u + 4) mod 5 (Problem when failing node?)

Removing a node with normal hashing changes location of every node

h(u) = (7u + 4) mod 5 (Problem when adding node?)
Adding a node changes the location of every node

Consistent hashing
Consistent hashing (how does it work?)

Consistent hashing: Removing a cache

Consistent hashing: Add a cache

Adding an object : Consistent hashing

Implementation at each cache
Cassandra global read‐path

A “good” base hash function is MD5