Кеширование
Уровни кэша: тест на свободное воспроизведение
Воспроизведение бьёт перечитывание. На каждый промпт скажи или напиши полный ответ по памяти, прежде чем открыть модельный — усилие припоминания и есть то, что закрепляет лестницу задержек и сбои.
Восстанови позвоночник юнита — лестницу задержек, точку окупаемости hit ratio, OS page cache, где кэшировать и сбои wrong-layer и double-caching — не подглядывая в урок.
- 01Пройди лестницу задержек кэширования от быстрого к медленному с грубыми числами и объясни, почему порядки величин важнее точных цифр.
- 02Почему добавление cache может ухудшить задержку и какая формула средней задержки это доказывает?
- 03Что такое OS page cache и почему он меняет решение «добавлять ли Redis»?
- 04Дан кандидат-путь чтения — как решить, кэшировать ли и на каком слое?
- 05Что такое double-caching, почему оно даёт баги stale-on-stale и что делает их трудными для отладки?
- 06Что на деле говорит низкий hit ratio и почему «повысить hit ratio» — не всегда цель?
Если ты смог восстановить каждый ответ по памяти, ты держишь позвоночник юнита: кэширование — лестница задержек, где порядки величин решают, помогает ли cache; miss платит cache+origin, поэтому низкий hit ratio или быстрый origin делают cache хуже, чем его отсутствие; OS page cache и buffer pool часто уже делают origin быстрым, как RAM; кэшируешь, только когда origin медленный, hit ratio высокий, а устаревание терпимо, на слое, который позволяет волатильность данных; а повторяющиеся senior-сбои — wrong-layer кэширование и double-caching одного факта на двух слоях, лечатся одним владельцем и одним путём инвалидации на каждый кэшируемый факт.