Long, long time ago at RHEL we had a nginx 1.6.0. И был у того nginx'а кэш, а за кешом стоял бигдатый сервер. А поскольку всё бигдатое требует времени, то был у nginx поставлен proxy_cache_lock_timeout 10m;
Летели дни, кружась проклятым роем, и вот на часть кластера приехал nginx 1.8.0, а в нём, подобно утке в зайце, появился Default: proxy_cache_lock_age 5s;. Все читали релиз ноутсы, да все хуй клали на новые опции. Так и обновили неглядя.
Случился факап, полезли разбираться. Увидели, что через кэш пролезают параллельно несколько запросов с MISS. Охуели. Почитали доки. Нашли proxy_cache_lock_age. Проверили на 1.6.0 — там запросы по честному 10 минут ждут, а вот на 1.8.0 через пять секунд прорыв периметра случается.
Вот такая поучительная история о том, что даже в годных проектах типа nginx иногда меняется поведение параметров при обновлении. Берегите себя и свой продакшен.