Что такое CDN

CDN — что это такое? Об этом мы расскажем в статье. 

Что такое сеть доставки контента (CDN)

Открывая сайт, пользователи рассчитывают, что перейдут на нужную страницу максимум за 2-3 секунды. Если ресурс загружается дольше, есть риск, что потенциальный клиент уйдет со страницы на сайт конкурента. 
Существует 2 наиболее распространённые причины долгой загрузки страниц:

  1. Недостаточно мощный сервер. Если на сайте много скриптов и обращений к базе данных, то сервер может не выдержать большой нагрузки и работать медленно. Для решения проблемы можно изменить конфигурацию текущего сервера или переехать на более мощный. 
  2. Сервер расположен далеко от пользователя. К примеру, если хостинг расположен в Москве, то у пользователей из Москвы сайт будет открываться быстрее, чем у пользователей из Хабаровска. Эта проблема решается при помощи CDN.

CDN (Content Delivery Network — сеть доставки контента) — это сервис ускорения загрузки сайта. С его помощью данные передаются быстро, независимо от того, где находится хостинг. Это возможно благодаря распределенным по всему миру кэширующим серверам: информацию отдают те, которые находятся ближе к пользователю и получается быстрее, чем если бы она шла с основного сервера.

Как работает CDN

Сайт без подключенного CDN работает следующим образом:

  1. Пользователь набирает название сайта в строке браузера.
  2. Браузер отсылает запрос на сервер.
  3. На сервер поступает запрос. Он ищет данные, которые запросил пользователь.
  4. Сервер находит данные, браузеру возвращается ответ.
  5. Информация, которую искал пользователь, отображается в браузере. 

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

Взаимодействие с сайтом, для которого подключен CDN, происходит по другому алгоритму. Здесь используется 2 типа серверов:

  1. Origin (ориджин) — основной сервер, который хранит данные сайта.
  2. PoP (Edge) — кэширующий сервер. Такие серверы находятся в различных географических точках и хранят данные сайта. На них размещается статический контент, а динамический контент хранится на ориджине. 

Когда посетители вбивают имя сайта в строку браузера, то получают  статические данные не с основного сервера, а с ближайшего PoP-сервера. Поскольку PoP географически ближе ориджина, то сайт открывается быстрее.
Статический контент — это неизменяемые данные сайта. Все посетители страницы получают такой контент в одинаковом виде. К нему относятся:

  • HTML,
  • CSS,
  • фотографии,
  • видео.

Динамический контент — это изменяемые данные сайта. Такие данные по-разному отображаются у всех посетителей, они могут изменяться в зависимости от действий посетителя. Например, лента в социальных сетях или контекстная реклама.

Как кэшируются данные

Каким образом контент попадает с origin на PoP-сервер? Информация кэшируется в тот момент, когда пользователь из конкретного региона впервые заходит на сайт. Допустим, у нас есть сайт domain.com. Виртуальный хостинг (origin) находится в Сингапуре, а PoP — в Самаре. После того как на сайт зайдет первый посетитель из Самары, данные закэшируются на PoP-сервере и будут отдаваться следующим посетителям с него. Запрос первого пользователя будет обрабатывать ориджин, поэтому информация будет загружаться дольше, чем обычно. Зато все последующие запросы будет обрабатывать PoP, и страница начнет открываться быстро.
Стоит отметить, что кэширующие серверы умеют обмениваться контентом между собой. К примеру, если domain.com решит посетить житель Пензы, то его PoP получит данные не с ориждина, а с кэширующего сервера в Самаре (если он будет ближе).

Для чего нужен CDN

  1. Ускорение загрузки. Технология CDN — это распределённая сетевая инфраструктура, узлы которой расположены по всему миру. Из-за географического положения узлов сайт будет открываться быстро у посетителей в любой точке мира.
  2. Уменьшение нагрузки на основной сервер. За счет того, что часть запросов поступает на промежуточные узлы, нагрузка на origin снижается. 
  3. Повышение отказоустойчивости. Закэшированные статические данные будут доступны даже в том случае, если ориджин сломается. 
  4. Защита от DDoS-атак. Из-за распределения трафика между большим количеством узлов совершить DDoS-атаку будет сложнее и дороже.
  5. Улучшение позиций в поисковой выдаче. Высокая скорость загрузки положительно влияет на продвижение сайта. 

Кому необходим сервис CDN:

  • интернет-магазинам,
  • стриминговым платформам,
  • облачным игровым порталам,
  • высокоскоростным мобильным приложениям,
  • платформам, на которых распространяют программное обеспечение,
  • прочим проектам с пользователями во всем мире.

Минусы CDN:

  1. Задержка кэширования. Может быть такое, что на ориджине в файлы внесли изменения, а на PoP по-прежнему находится устаревшая версия. Для решения этой проблемы в CDN существует функционал для чистки кэша, который удаляет информацию из пула кэширования. Помимо этого, у владельцев проектов есть возможность управления настройками при помощи заголовков-валидаторов.
  2. Случайная блокировка. Если сайт вашего “соседа” заблокируют по IP CDN-провайдера, то случайно могут заблокировать и ваш ресурс. Чтобы решить проблему, можно сменить IP у CDN-провайдера.

Популярные CDN-провайдеры:

  • Cloudflare,
  • Akamai,
  • NGENIX,
  • cdnnow!,
  • CDNvideo.
Если вы не нашли ответ, спросите у нас!
Написать в поддержку