Как работает CDN
Без CDN каждый запрос к сайту идёт напрямую к origin-серверу — даже если пользователь находится в 5000 км от дата-центра. CDN решает это через сеть точек присутствия (PoP — Points of Presence): пользователь получает контент с ближайшего к нему сервера.
Алгоритм работы:
- Пользователь запрашивает изображение товара
- DNS разрешается в ближайший edge-сервер CDN
- Если файл есть в кэше (cache hit) — возвращается немедленно
- Если нет (cache miss) — edge запрашивает origin, кэширует и возвращает
Что ускоряет CDN в e-commerce
| Ресурс | Без CDN | С CDN |
|---|---|---|
| Изображения товаров | Загружаются с origin в Москве | С ближайшего edge (< 50 мс) |
| JS/CSS бандлы | Одна точка доступа | Параллельная раздача по всему миру |
| JS-сниппет платформы персонализации | Задержка инициализации виджета | Быстрая загрузка, меньше мерцания |
| Видео-обзоры | Высокая нагрузка на origin | Потоковая раздача с edge |
CDN и безопасность
Современные CDN-платформы (Cloudflare, Akamai, VK Cloud) — не только ускорение:
- Защита от DDoS — фильтрация вредоносного трафика до достижения origin
- Терминирование TLS — HTTPS-соединение заканчивается на edge, origin может работать по HTTP внутри периметра
- WAF (Web Application Firewall) — блокировка известных атак на уровне edge
CDN и персонализация
Важно: CDN и персонализация — сложные соседи. CDN хранит одну версию страницы для всех. Персонализация требует разных ответов разным пользователям.
Решения:
— Fragment caching — кэшировать «каркас» страницы, персонализированные блоки загружать асинхронно
— Edge Functions — выполнять логику A/B тестов и персонализации прямо на edge, без обращения к origin
— Vary headers — кэшировать разные версии по cookie группы теста (внимательно: резко снижает cache hit rate)
Типичные ошибки
- Кэширование страниц с корзиной — пользователь видит корзину чужого пользователя
- Отсутствие cache-busting — при обновлении JS/CSS старый файл остаётся в кэше CDN
- Одинаковый TTL для всего — изображения и API-ответы требуют принципиально разных настроек