CDN: что это и зачем она нужна

CDN: что это и зачем она нужна

01.07.2022
Автор: HostZealot Team
2 мин.
381

CDN (Content Delivery Network) — географически распределённая сетевая инфраструктура, созданная с целью оптимизации доставки и дистрибуции данных конечному пользователю – нам с вами.

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

Сеть доставки (и дистрибуции) содержимого предполагает внедрение дополнительных узлов хранения и передачи данных – это такие вспомогательные серверы, которые кэшируют часть контента, или даже весь сайт целиком. То есть данные сайта дублируются в нескольких частях мира – а это значит, что ваш сайт будет доступен посетителям даже в случае, если на главном сервере произойдет какой-нибудь сбой. Запросы от посетителя будут перенаправляться на кэширующий сервер, который находится ближе всего к посетителю – ко всему прочему, это позволяет снизить пинг, так как трафик будет двигаться по минимально-возможному маршруту.

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

Терминология и принцип работы CDN

Есть 6 ключевых терминов, которые раскрывают суть этой технологии:

  1. CDN – распределенная сеть доставки контента.
  2. Origin – центральный сервер, где хранятся исходники, которые дублируются на кэширующих серверах.
  3. Статический контент – данные, которые хранятся на сервере в неизменном виде и автоматически никак не модифицируются.
  4. Динамический контент – это данные, которые генерируются на сервере в момент поступления запроса от посетителя.
  5. PoP – точка присутствия, или кэширующий сервер в рамках распределенной сети.
  6. Кэширование – процесс записи данных в промежуточный буфер, откуда возможно практически мгновенное считывание сервером.

Для наглядности можно представить такую ситуацию – ваш центральный сервер располагается в Торонто, в Канаде, и к этому «ориджину» пытается подключиться житель Киева, чтобы почитать новости и узнать, как там вообще поживает диаспора. Расстояние от Киева до Торонто составляет примерно 7551 км по прямой. Это довольно много, и при этом стоит учитывать, что оптоволоконные кабели пролегают не по прямой, так что дистанция будет еще больше. И пинг, соответственно, тоже огромный.

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

cdn: что это и зачем она нужна

Как настроить CDN

Чтобы раздать статический контент на несколько точек PoP, нужно:

  1. Залить всю «статику» на отдельный домен.
  2. Через провайдера договориться о подключении CDN-сети. Ему потребуется информация о вашем центральном домене и вспомогательных, откуда будет вестись раздача.
  3. Обратиться к DNS-регистратору для настройки CNAME-записи.
  4. На основном сайте поменять доменное имя для статического контента, который необходимо транслировать через CDN.

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

Какие преимущества дает CDN

Выделим ключевые:

  • увеличивает скорость загрузки сайта благодаря оптимизации сетевого маршрута;
  • снижает нагрузки на центральный серверный узел, повышает отказоустойчивость и стабильность работы сайта;
  • увеличивает географический охват аудитории, причем значительно;
  • позволяет масштабировать количество PoP с целью интеграции на новые рынки и для выхода на новую аудиторию;
  • упрощает задачу размещения «тяжелого» контента, что особенно полезно, если на центральном сервере работают ресурсоемкие приложения или интерактивные медиафайлы;
  • способствует SEO-продвижению – сайты с географически распределенной инфраструктурой получают более высокие позиции в поисковой выдаче, они лучше ранжируются.

В конце концов, это повышает надежность и стабильность работы любого ресурса, так что при грамотной настройке вы можете вплотную приблизить аптайм сайта до 100%. Эта технология идеально подойдет как для интернет-магазинов, так и для различных стриминговых сервисов, дистрибьюторов программного обеспечения. Те же Netflix, YouTube и Spotify активно используют CDN, так как более достойных альтернатив на сегодняшний день попросту не существует.

На этом мы заканчиваем наш материал и благодарим за внимание. Если остались вопросы – пишите, наши специалисты всегда на связи.

# О решениях Поделиться:
Статьи по Теме