---
id: TASK-45.46
title: 'Статья 06: кэширование'
status: Done
assignee:
  - '@assistant'
created_date: '2026-09-17 17:22'
updated_date: '2026-09-17 20:04'
labels: []
dependencies:
  - TASK-45.40
references:
  - applications/yandex-codenv/system-design/brief.md
parent_task_id: TASK-45
priority: high
ordinal: 91000
---

## Description

<!-- SECTION:DESCRIPTION:BEGIN -->
Статья по разделу 06 брифа: уровни кэша, LRU/LFU, cache-aside vs write-through/write-back, инвалидация, thundering herd, CDN. Верхний уровень, 10-20 мин чтения.
<!-- SECTION:DESCRIPTION:END -->

## Acceptance Criteria
<!-- AC:BEGIN -->
- [x] #1 articles/06-caching.md создан (10-20 мин чтения)
- [x] #2 Есть блок «что будет при отказе кэша» и ссылки на knowledge-base.md §4
<!-- AC:END -->

## Implementation Plan

<!-- SECTION:PLAN:BEGIN -->
1. Изучить формат серии (00/01/02/03/05) и источники: KB §4, Сюй гл.1, SDP §7, статья Яндекса (L1/L2), classic-designs §1-2, §4. 2. Написать articles/06-caching.md по каркасу серии (~14 разделов): уровни кэша, что кэшируем, стратегии (cache-aside/write-through/write-behind/refresh-ahead), инвалидация (TTL, delete-not-update, версионированные ключи, событийная, delayed double delete), вытеснение LRU/LFU + hot key, stampede, отдельный блок «что будет при отказе кэша» (AC#2), CDN, метрики, прикладные формулировки (shortener/лента/медиа), ошибки, чек-лист, самопроверка. 3. Сквозные ссылки на knowledge-base.md §4 (AC#2) и соседние статьи (02 §4/§6, 03 §2/§4, 05 §7-8/§10, 07, 08, 11). 4. Проверить AC, финализировать задачу, закоммитить.
<!-- SECTION:PLAN:END -->

## Implementation Notes

<!-- SECTION:NOTES:BEGIN -->
Создан articles/06-caching.md (47 КБ, 4306 слов — калибровка серии: 02-estimations 4160 слов/41 КБ принят как 10-20 мин; ~15-18 мин при 230-280 сл/мин). Структура из 14 разделов: зачем (латентности + 80/20) → уровни (клиент/CDN/proxy/L1/L2/БД, эталон Яндекса) → объекты vs запросы → 5 стратегий → инвалидация (TTL/delete/версионирование/событийная + гонка cache-aside и delayed double delete) → LRU/LFU/hot key → stampede (3 сценария, 3 защиты) → §8 отказ кэша (таблица: нода/слой/write-behind/холодный старт) → CDN дополнения (origin shield) → метрики (hit ratio арифметика) → прикладные формулировки (shortener/лента/медиа) → ошибки → чек-лист → самопроверка. Все внутренние ссылки проверены на существование файлов (12 путей OK). README.md системы дизайна обновлён: 45.46 ✅. Финальная вычитка: исправлены лестница масштабирования (реплики до кэша, не после), точность эталона Яндекса, опечатки.
<!-- SECTION:NOTES:END -->

## Final Summary

<!-- SECTION:FINAL_SUMMARY:BEGIN -->
Статья 06 «Кэширование» создана: articles/06-caching.md (14 разделов, 47 КБ / 4306 слов — в диапазоне 10-20 мин чтения по калибровке серии). Покрыт весь раздел 06 брифа: уровни кэша (клиент→CDN→proxy→L1→L2→БД), LRU/LFU + Redis-политики, cache-aside/read-through/write-through/write-behind/refresh-ahead, инвалидация (TTL, delete-not-update, версионированные ключи, событийная, гонка + delayed double delete), hot key, stampede (jitter/single-flight/прогрев). AC#2: отдельный раздел §8 «Что будет при отказе кэша» (4 случая таблицей с метриками) + 6 ссылок на knowledge-base.md §4 (шапка, §4, §8, §10, §13, связанные документы). Все 12 внутренних ссылок валидны. README обновлён (45.46 ✅). Формат и перекрёстные ссылки соответствуют серии (00/01/02/03/05).
<!-- SECTION:FINAL_SUMMARY:END -->
