Главная » Разборы

CacheLock Apache: срок блокировки обновления не является сроком годности ответа

Запросить

Когда популярная запись кэша устаревает, много клиентов могут одновременно обратиться к origin за её обновлением. CacheLock предназначен для ограничения такого всплеска. Он координирует refresh, а не задаёт новый общий TTL содержимого.

CacheLockMaxAge определяет максимальный возраст блокировки в секундах. Слишком старый lock игнорируется, чтобы другой запрос получил возможность обновить запись. Это отличается от Cache-Control и сроков сохранённого HTTP-ответа. Подмена одного таймера другим не обеспечивает нужной свежести данных.

Для работы важны место и доступность lock files, а также поведение при медленном origin. Слишком короткий срок способен ослабить защиту от параллельных refresh, слишком длинный — повлиять на восстановление после зависшего обновления. Итог зависит от заданной политики выдачи stale и реальной длительности запроса.

В приёмке создают согласованный одновременный спрос после истечения freshness. Измеряют обращения к origin, клиентские ответы и восстановление после сбоя обновления. Успешное создание lock-файла не является полной проверкой. Отчёт должен различать снижение нагрузки на backend и соблюдение допустимого возраста выдаваемых данных.

Основание — Official Apache HTTP Server2.4 branch reference snapshot; exact installed patch not inferred, разделы CacheLock; CacheLockMaxAge; CacheLockPath; Thundering herd protection. Сохранён текст публичной справочной публикации; конкретная реализация может поддерживать только часть возможностей. Основание — снимок официальных руководств ветки Apache HTTP Server 2.4. Это обновляемая ветка, а не документация подтверждённого patch установленного сервера. Реальные модули, virtual hosts, файловые пути и правила доступа не проверялись; запросы к рабочему серверу и изменения не выполнялись.

Все разборы

Весь каталог Motorola и аналогов — 13 позиций

Возимые и носимые станции, TETRA, PoC и Си-Би — всё, что держим на складе.