Thundering herd
Many clients or processes hitting one resource at the same moment, for example right after an outage ends or a popular cache entry expires.
When a service comes back, every client that was retrying arrives at once and can knock it over again. When a hot cache key expires, many requests miss together and all query the database (a cache stampede). The fixes spread or merge the load: jitter on retries and timers, one request rebuilding a cache entry while the others wait, and staggered expiry times.
Related terms
- Retry with exponential backoff and jitter: Retrying a failed call after waits that grow each time, with some randomness added so many clients do not retry at the same moment.
- Load shedding: Rejecting some requests on purpose when a system is overloaded, so the rest still get served instead of everything grinding to a halt.
