Edge Cache and CDN Platform · View 15 of 29 · 5 · Runtime
Why convergence is per node
- Request collapsing only works inside one process: waiters can only join a fetch in the same cache. So a flash crowd collapses only if every request for the key ends up on the same node at each tier. The PoP ring does that inside a PoP, and hashing to a shield node does it across PoPs.
- A shield chosen per site but not per node would still send one origin fetch per shield node. That is four times the origin load exactly when the origin can least afford it.
Mechanisms
- Traffic Server read-while-writer streams the in-flight response to every waiter as it arrives, instead of making them wait for the whole object to be stored.
- TTLs get 10% jitter at store time, so objects cached together do not all expire in the same second.
- Waiters have a 10-second limit. After that, standard and resilient paths are served stale and strict paths get the declared error, so one slow origin cannot hold thousands of connections open.
Numbers
- An 8× crowd on one property for 90 seconds is absorbed at the edge. Origin fetches for that object stay at one per shield per TTL, whatever the edge volume.
- Per-origin ceiling of 64 concurrent connections at each shield is a default, declared per origin set.