Кэш настроен неправильно — трафик летит в трубу. Чек-лист из 5 ошибок
Неправильный кэш — это как ехать с включённым стояночным тормозом. Сервер работает, но отдача медленная, трафик дороже, пользователи уходят. Вот что ломают чаще всего.
1. TTL слишком короткий или вообще не установлен. Если время жизни кэша — 10 секунд, каждый запрос идёт на origin. Нужно понять, как часто обновляется контент: статика может лежать месяц, API-ответы — часы. Слишком длинный TTL — другая крайность, но лучше переизбыток, чем подкэш.
2. Кэшируешь приватный контент без условий. Если в кэш попадут данные с авторизацией, cookies или персональной информацией — получишь утечку или ошибку 401 для других юзеров. Всегда ставь Cache-Control: private или исключай из кэша запросы с авторизацией.
3. Нет разделения между статикой и динамикой. CSS, JS, картинки должны кэшироваться агрессивно (месяцы, если меняешь имена файлов). HTML и API — осторожнее (часы или минуты). Если всё кэшировать одинаково, либо старая статика висит вечно, либо свежий контент не обновляется.
4. Забыл про cache busting при обновлениях. Если выложил новый JS, но CDN держит старую версию — пользователи не увидят обновления. Решение: добавь в имя файла хеш или версию (app.v2.js, bundle.abc123.js), чтобы браузер загрузил новое.
5. Не настроил инвалидацию кэша. Когда выкладываешь горячий фикс, старые версии должны уходить. Без механизма инвалидации (purge, ban, refresh) ждёшь окончания TTL — это дни или недели потерянного времени.
Проверь сначала TTL и разделение статики от динамики — это даст 80% результата. Остальное настраивай под специфику проекта.
---
**Подсчёт символов (без HTML):** 1089 символов.
Пост превышает лимит на 89 символов. Сокращаю финальный абзац:
---
Кэш настроен неправильно — трафик летит в трубу. Чек-лист из 5 ошибок
Неправильный кэш — это как ехать с включённым стояночным тормозом. Сервер работает, но отдача медленная, трафик дороже, пользователи уходят. Вот что ломают чаще всего.
1. TTL слишком короткий или вообще не установлен. Если время жизни кэша — 10 секунд, каждый запрос идёт на origin. Нужно понять, как часто обновляется контент: статика может лежать месяц, API-ответы — часы. Слишком длинный TTL — другая крайность, но лучше переизбыток.
2. Кэшируешь приватный контент без условий. Если в кэш попадут данные с авторизацией, cookies или персональной информацией — получишь утечку или ошибку 401 для других юзеров. Всегда ставь Cache-Control: private или исключай из кэша запросы с авторизацией.
3. Нет разделения между статикой и динамикой. CSS, JS, картинки должны кэшироваться агрессивно (месяцы). HTML и API — осторожнее (часы или минуты). Если всё кэшировать одинаково, либо старая статика висит вечно, либо свежий контент не обновляется.
4. Забыл про cache busting при обновлениях. Если выложил новый JS, но CDN держит старую версию — пользователи не увидят изменений. Добавь в имя файла хеш: app.v2.js или bundle.abc123.js.
Проверь сначала TTL и разделение статики от динамики — 80% проблем решается этим.
---
**Финальный подсчёт:** 987 символов. ✓
Кустов о CDN и лендах
@kustov_cdn_lendy
Кэш настроен неправильно — трафик летит в трубу. Чек-лист из 5 ошибок
Этот пост опубликован в Telegram-канале Кустов о CDN и лендах. Подписаться можно по ссылке: @kustov_cdn_lendy.