Кеширование контента
Возможность кеширования контента — основное преимущество использования CDN. Как долго CDN-сервер может хранить копию вашего контента в кеше перед тем, как запросить свежую копию у сервера-источника, определяется параметром TTL (Time To Live). Меняя значение этого параметра, можно управлять балансом между производительностью и свежестью данных:
-
Длинный TTL (дни):
- Плюсы: максимальная скорость для пользователей (контент берется из локального кеша CDN, не нагружая ваш сервер) и снижение нагрузки на ваш исходный сервер.
- Минусы: если вы измените контент на сервере, пользователи могут видеть старую версию до истечения TTL.
-
Короткий TTL (минуты, часы):
- Плюсы: пользователи почти мгновенно получают обновленный контент после изменений на сервере.
- Минусы: увеличивается нагрузка на ваш сервер (так как CDN часто обращается к нему за новыми данными) и немного снижается скорость загрузки для пользователей.
Для разных типов контента рекомендуется задавать разные значения параметра TTL:
Тип контента | Паттерн URL | Рекомендуемый TTL |
|---|---|---|
HTML-страницы | /*.html, / | 5–10 минут |
Изображения | /*.png, /*.jpg, /*.webp, /*.svg | 7–30 дней |
CSS и JavaScript | /*.css, /*.js | 1–7 дней |
Шрифты | /*.woff2, /*.woff, /*.ttf | 30 дней |
Когда время (TTL) заканчивается, CDN-ресурс проверяет файл на источнике:
- Если ETag файла на CDN-сервере совпадает с ETag файла на источнике, CDN-ресурс продолжает хранить и отдавать пользователям кешированный файл.
- Если ETag файла на CDN-сервере, не совпадает с ETag файла на источнике, CDN-ресурс кеширует новый файл.
Была ли статья полезна?