Кэш статики и динамики: где CDN ускоряет, а где ломает сессию
Статика кэшируется просто: CSS, JS, изображения, шрифты, видеофрагменты. Для них важны длинный TTL, версионирование файлов и запрет на случайный bypass по cookies. Если имя файла меняется при релизе, CDN получает новый объект, а не спорит со старым.
С динамикой сложнее. HTML, корзина, личный кабинет, API-ответы и страницы с персонализацией нельзя кэшировать «на автомате». Здесь ошибка обычно не в TTL, а в ключе кэша: игнорирование Cookie, Authorization, языка, device hints или query string приводит к чужим данным в ответе. Это уже не оптимизация, а инцидент.
Полезное правило: разделяйте контент по слоям. Cache Everything — только там, где ответ предсказуем и одинаков для всех. Для HTML чаще безопаснее кэшировать по правилам, с явным исключением авторизованных запросов, POST/PUT и страниц с активной сессией. Для API — сначала проверка идемпотентности и приватности, потом кэш.
И ещё один нюанс: если origin уже умеет отдавать корректные Cache-Control и Vary, не переписывайте их без причины на стороне CDN. Стабильность инфраструктуры — залог масштабируемости. Разбираем логи, оптимизируем кэширование, минимизируем задержки.
Оптимизация Cloudflare и CDN
@cloudflare_optimization_pro_arb
Кэш статики и динамики: где CDN ускоряет, а где ломает сессию
Этот пост опубликован в Telegram-канале Оптимизация Cloudflare и CDN. Подписаться можно по ссылке: @cloudflare_optimization_pro_arb.