Возможности CDN
Content Delivery Network или сеть доставки контента — это географически распределенная сеть серверов, главная цель которой максимально ускорить и обезопасить доставку контента. CDN это мощный инструмент, предназначенный для повышения производительности, обеспечения безопасности и масштабируемости веб приложений. Выступая в качестве посредника между пользователями и серверами приложений, обратный прокси-сервер обеспечивает эффективное управление, фильтрацию и оптимизацию всего входящего трафика перед тем, как он достигнет вашей внутренней инфраструктуры.
Дополнительный эшелон защиты
Улучшенная производительность
Балансировка сетевого трафика
Как начать использовать CDN
Выполнить три шага
Готовность за несколько часов
1. В личном кабинете Alviy создайте зону и перенесите все DNS записи
2. Делегируйте домен на Alviy у вашего регистратора доменов
3. Дождитесь создания SSL/TLS сертификатов
4. Управляйте
Когда CDN нужен, а когда не даёт эффекта
Сеть доставки помогает не всем одинаково. Стоит подключать, если узнаёте свой случай, и не стоит ждать чуда, если нет.
| Ситуация | Что даёт CDN |
|---|---|
| Много картинок, видео, файлов для скачивания | Основной сценарий: статика раздаётся с ближайшего узла, канал источника разгружается |
| Аудитория распределена по регионам | Сокращает задержку на каждом запросе, а не только на первом |
| Периодические всплески трафика | Пики принимает сеть, а не ваш сервер |
| Сайт уже пробовали атаковать | Реальный адрес перестаёт светиться, мусор отсекается на подступах |
| Внутренний сервис на десять сотрудников | Практически ничего — задача решается настройкой сервера |
| Каждый ответ уникален для пользователя | Кэшировать нечего, остаётся только проксирование и защита |
Что именно ускоряется
Ускорение складывается из трёх вещей, и первая обычно даёт больше остальных вместе взятых:
- Кэш статики на пограничных узлах. Картинки, скрипты, стили и шрифты отдаются с узла, ближайшего к посетителю. До вашего сервера такой запрос вообще не доходит — ни по сети, ни по нагрузке.
- Установка TLS-соединения рядом с пользователем. Рукопожатие требует нескольких обменов пакетами, и каждый из них идёт со своей задержкой. Когда соединение устанавливается с ближним узлом вместо сервера на другом континенте, экономия заметна ещё до того, как загрузится первый байт страницы.
- Сжатие и оптимизация передачи. Работает на всём, что уходит клиенту, включая динамические ответы.
Динамика при этом не исчезает: запросы, которые нельзя закэшировать, идут к источнику как обычно — просто по уже установленному соединению между узлом и вашим сервером.
Что сеть берёт на себя по защите
Побочный эффект проксирования оказывается для многих главным. Когда трафик идёт через сеть, наружу видны только её адреса, а ваш сервер перестаёт быть мишенью. Объёмные атаки размазываются по узлам и гасятся суммарной ёмкостью сети, заведомо мусорные пакеты отбрасываются по сигнатурам, а прикладные атаки отсекаются анализом поведения клиента. Подробный разбор того, какие бывают атаки и что против каждой работает, — в материале про защиту от DDoS.
Важная оговорка: защита имеет смысл только вместе со скрытием исходного адреса. Если старые A-записи, поддомены вроде mail или заголовки писем выдают адрес сервера, атакующий обойдёт сеть и ударит напрямую. Перед подключением адрес сервера имеет смысл сменить и закрыть на нём приём трафика отовсюду, кроме сети фильтрации.
Как это выглядит в DNS-зоне
Подключение делается не на сервере, а в зоне: домен делегируется на наши NS-серверы, после чего у нужных записей включается проксирование. Снаружи запись продолжает отдавать адрес — просто не ваш, а сети. Ничего переписывать в приложении не нужно.
Отсюда два следствия. Первое: управление зоной и управление проксированием живут в одном месте — это DNS-хостинг с редактором записей. Второе: включать и выключать проксирование можно по отдельной записи, а не для всего домена сразу. Например, сайт проксировать, а почтовые записи оставить как есть — иначе почта просто перестанет ходить. Какие записи за что отвечают, разобрано в обзоре типов DNS-записей.
Что настроить сразу после подключения
Четыре вещи, без которых сеть работает вполсилы:
- Заголовки кэширования на источнике. Именно они говорят сети, что и насколько долго можно хранить. Без них кэшируется меньше, чем могло бы, и весь смысл теряется.
- Сброс кэша при выкладке. Иначе после обновления сайта часть посетителей ещё какое-то время будет видеть старую версию.
- Ограничение доступа к источнику. Сервер должен принимать трафик только из сети фильтрации — тогда прямой удар по адресу не проходит.
- Понижение TTL перед работами. Полезно и при подключении, и при любом последующем переключении: понижать нужно заранее, за сутки.
Частые вопросы
Нужен ли отдельный сертификат? Нет. Сертификаты выпускаются автоматически после делегирования домена — отдельно покупать и продлевать ничего не требуется.
Что будет с почтой? Ничего, если не включать проксирование на MX и связанных с почтой записях. Почтовые записи должны указывать на реальный сервер.
Можно ли подключить только часть сайта? Да, проксирование включается по отдельным записям. Часто так и делают: сначала статика и основной домен, потом остальное.
Чем это отличается от reverse proxy? Технически CDN и есть обратный прокси с кэшем и распределённой сетью узлов. Если кэш не нужен, а нужна только единая точка входа и фильтрация, посмотрите reverse proxy как услугу.
Мы уходим с зарубежного сервиса — что учесть? Порядок переезда и разбор того, какие функции чем закрываются, собраны отдельно: чем заменить Cloudflare.
Тарифы по проксированию, фильтрации и антиботу — на странице цен. Если нужна не доставка контента, а отказоустойчивость самой зоны, посмотрите вторичный DNS.