CDN и защита Hosting Облако Cdn Сеть доставки контента

Что такое CDN и как работает доставка контента

Разбираем путь запроса через CDN: DNS, edge, origin, кэш, TLS и очистку. Когда сеть ускоряет сайт, а какие проблемы она не решает.

Елена Иванова
Елена Иванова

WordPress, интернет-магазины и стоимость продления

Она сравнивает WordPress-хостинг, домены, почту, платные бэкапы и условия продления для интернет-магазинов.

6 мин чтения

CDN — это распределённая сеть серверов, которая отдаёт пользователю копию контента с подходящей пограничной точки. При промахе кэша CDN запрашивает файл у исходного сервера. Ускорение зависит от географии, правил кэширования, TLS, DNS, размера файлов и исправности origin, поэтому подключение само по себе не гарантирует быстрый сайт.

CDN не заменяет хостинг

Сеть доставки контента находится между посетителем и исходным сервером, который часто называют origin. На origin остаются сайт, приложение или бакет с оригинальными файлами. CDN получает оттуда ответы, временно хранит разрешённые копии и раздаёт их через свои пограничные точки.

Если origin не умеет сформировать правильный ответ, CDN не починит приложение. Он может уменьшить число повторных запросов за статикой, но база данных, корзина и личный кабинет по-прежнему зависят от серверной части.

КомпонентРольЧего не гарантирует
DNSНаправляет домен на инфраструктуру CDNКэширование и ускорение ответа
EdgeПринимает запрос рядом с выбранной точкой сетиФизически ближайший сервер для каждого клиента
КэшПовторно использует подходящую копию ответаСвежесть без корректных правил
OriginХранит или формирует исходный контентДоступность при любой нагрузке
TLSШифрует соединения на настроенных участкахИсправность приложения и отсутствие уязвимостей

Как проходит запрос

Сначала браузер запрашивает адрес домена через DNS. Для отдельного домена раздачи владелец часто создаёт CNAME на имя, выданное CDN. DNS направляет запрос, но не решает, что можно положить в кэш и на какой срок.

Далее запрос попадает на edge. CDN вычисляет ключ кэша из пути и выбранных параметров. Если подходящая свежая копия есть, происходит cache hit: edge отвечает без запроса к origin.

При cache miss копии нет, она устарела или правила запрещают её использовать. Тогда CDN обращается к origin, получает ответ, возвращает его посетителю и, если разрешено, сохраняет копию для следующих запросов.

Не каждый пользователь всегда попадёт в буквально ближайший дата-центр. На маршрут влияют сеть провайдера, DNS-резолвер, доступность точки, пиринг и решения самого CDN. Поэтому географическая карта узлов не равна обещанию минимальной задержки.

Что именно кэшируется

Изображения, CSS, JavaScript, шрифты и загрузочные файлы обычно проще кэшировать, потому что один и тот же объект подходит многим посетителям. Динамический HTML, ответы API и страницы с cookie требуют осторожных правил.

Cloudflare, например, различает типичные статические ресурсы и динамический HTML в стандартном поведении кэша. Это иллюстрация принципа, а не универсальная настройка для любого CDN.

На решение влияют заголовки Cache-Control, срок свежести, cookie, строка запроса, метод и правила конкретного сервиса. Нельзя включать общее кэширование личного кабинета только ради высокого hit ratio: чужая персональная страница в общем кэше опаснее медленного ответа.

Ключ кэша должен различать варианты, которые действительно меняют содержимое. Если сайт отдаёт разные языки, форматы изображений или авторизованные ответы, игнорирование нужного заголовка или параметра смешает версии.

DNS и подключение домена

CDN обычно выдаёт техническое имя, на которое направляют домен или поддомен через DNS. После изменения старые ответы могут оставаться у резолверов до истечения их TTL. Это нормальная часть DNS, а не ошибка кэша страниц.

Перед переключением проверьте домен на тестовой конфигурации, сертификат и Host-заголовок, который CDN отправит origin. Ошибка здесь может открыть чужой виртуальный хост, вызвать цикл перенаправлений или разорвать TLS.

DNS — адресная книга с последствиями. Подготовьте прежнее значение записи и условие отката. Не удаляйте старую конфигурацию origin, пока запросы через CDN не проверены из нескольких сетей.

TLS работает на двух участках

При HTTPS есть как минимум соединение посетителя с CDN и соединение CDN с origin. Для каждого участка нужны совместимые протоколы, имя хоста и доверенный сертификат согласно выбранному режиму.

Сертификат на edge не доказывает, что участок до origin тоже проверяется безопасно. И наоборот, исправный сертификат origin не поможет, если домен раздачи не включён в сертификат CDN. Зелёный замок подтверждает защищённое соединение, а не правильность всего сайта.

Проверьте автоматическое продление, поведение при ошибке сертификата origin и запрет небезопасного отката на HTTP. Не выбирайте режим, который отключает проверку origin, только чтобы быстрее завершить настройку.

Очистка и обновление кэша

Если заменить файл по прежнему адресу, edge может продолжать отдавать свежую по своим правилам копию. Есть два нормальных подхода: дождаться истечения срока либо удалить нужный объект из кэша.

Для статических сборок надёжнее менять имя файла вместе с содержимым, например через хэш версии. Новая страница сразу ссылается на новый URL, а старая копия не мешает обновлению.

Полная очистка кэша возвращает поток промахов к origin и может резко увеличить его нагрузку. Yandex Cloud рекомендует выборочную очистку отдельных путей. Очищайте то, что изменилось, и заранее проверяйте запас origin.

Очистка не исправляет неправильный Cache-Control. Если ошибка повторяется после каждого обновления, нужно пересмотреть правила, а не превращать purge в обязательный этап каждой публикации.

Что CDN может улучшить

При подходящем контенте CDN сокращает путь повторной доставки, уменьшает число запросов за статикой к origin и распределяет трафик по своей сети. Это особенно заметно для тяжёлых файлов и аудитории, удалённой от исходного сервера.

Некоторые сервисы добавляют защиту от части сетевых атак, ограничение запросов, сжатие и преобразование изображений. Эти функции различаются по продуктам и тарифам. Наличие слова CDN не гарантирует доступность, безопасность или экономию.

Результат проверяют несколькими метриками:

  • временем ответа из регионов реальной аудитории;
  • долей попаданий и промахов кэша;
  • трафиком и нагрузкой на origin;
  • ошибками и стоимостью доставки.

Одна высокая доля попаданий может скрывать медленные динамические страницы.

Чего CDN не исправляет

CDN не ускорит медленный запрос к базе данных, если ответ нельзя безопасно кэшировать. Он не уменьшит тяжёлый JavaScript в браузере и не исправит слишком большое изображение, которое всё равно нужно передать пользователю.

Он также добавляет слой конфигурации. Неверный DNS, TLS, ключ кэша или правило доступа способны сделать сайт недоступным. Self-hosting как дача зимой: дополнительный слой полезен только пока его кто-то обслуживает.

Не берите то, что не будете обновлять и наблюдать. Для небольшого локального сайта выигрыш может быть скромным, а сложность — реальной. Сначала измерьте путь пользователей и нагрузку на origin.

Как сравнивать провайдеров

Для первичного списка можно изучить Cloudflare, Yandex Cloud, Selectel, Gcore, Bunny и AWS. Ссылки ведут на локализованные страницы HostScout, а функции нужно сверять с документацией выбранного продукта.

Смотрите на географию аудитории, управление кэшем, журналы, поддержку TLS, защиту origin и способ подсчёта трафика и запросов. Цены и пакеты меняются, поэтому сравнивайте действующие калькуляторы на своём профиле нагрузки.

Для магазина важен не только средний ответ. Магазин платит простоем, когда ошибка очистки или сертификата блокирует карточки товара. Нужны наблюдение, тестовый домен и документированный откат.

Чек-лист

  • Определите, какие ответы публичны и безопасны для общего кэша.
  • Подключите тестовый домен и проверьте DNS, Host-заголовок и оба TLS-участка.
  • Измерьте cache hit и miss, время ответа и трафик с origin до и после изменения.
  • Обновляйте статические файлы через версионированные имена и очищайте только нужные пути.
  • Сохраните старую DNS-запись и порядок отката до переключения основного домена.

Вопросы и ответы

Частые вопросы

CDN хранит весь сайт?
Не обязательно. Обычно он хранит только ответы, разрешённые правилами кэша. Приложение, база и оригинальные файлы остаются на origin.
CDN всегда выбирает ближайший сервер?
Не гарантированно. Маршрут зависит от сети, DNS, доступности узлов и политики CDN. Проверяйте задержку из реальных регионов аудитории.
Почему после обновления виден старый файл?
Свежая копия осталась на edge или в браузере. Проверьте Cache-Control и ключ кэша, используйте новое имя файла либо выборочную очистку.
Нужен ли отдельный сертификат для origin?
При HTTPS до origin нужен сертификат, который CDN может корректно проверить для используемого имени. Сертификат на edge защищает другой участок соединения.

Практический вывод

CDN полезен, когда известны аудитория, кэшируемый контент и ограничения origin. Подключайте его как измеряемый инфраструктурный слой: с тестовым доменом, корректным TLS, ясным ключом кэша и планом отката. Тогда сеть доставки решает конкретную задачу, а не добавляет ещё одну панель управления.

Статью подготовили

Елена Иванова
Елена Иванова

WordPress, интернет-магазины и стоимость продления

Она сравнивает WordPress-хостинг, домены, почту, платные бэкапы и условия продления для интернет-магазинов.

Проверка фактов

HostScout editorial

Статьи по теме

Ошибка 403 Forbidden: причины и исправление

Ошибка 403 Forbidden: найдите источник запрета по журналам, проверьте индексный файл, права, правила Nginx или Apache и блокировку IP.

8 мин чтения

Ошибка 502 Bad Gateway: причины и исправление

Что означает ошибка 502, что может сделать посетитель и как владельцу сайта проверить CDN, прокси, веб-сервер и приложение без слепых перезапусков.

6 мин чтения

Фотохостинг: где хранить и делиться фото

Разбираем, когда нужен публичный фотохостинг, медиатека сайта или объектное хранилище, как настроить доступ и не потерять изображения.

6 мин чтения

Cloudflare: DNS, CDN и защита сайта

Cloudflare для сайта: как подключить DNS, включить CDN и защиту, не сломать почту, SSL, WAF и доступ из России при миграции.

6 мин чтения

SSD против HDD для сервера: что выбрать

SSD против HDD для сервера: как выбрать накопитель под базу, сайт, архив и резервные копии без переплаты и скрытых рисков.

6 мин чтения

Пинг: что это, как проверить и читать результат

Пинг показывает задержку сети до сервера: как проверить командой ping, увидеть потери пакетов и выбрать ближнюю площадку без догадок.

5 мин чтения