Cdn как работает: Что такое CDN и как это работает? / Хабр

Содержание

Что такое CDN и как это работает? / Хабр

Цифры и факты (вместо введения)

  • В 2010 году средний размер веб-страницы составлял 481 кБ. В 2019 — уже 1936.7 кБ (подробная статистика). За последние три года значение этого показателя выросло на 314.7%. Как показывают исследования, тенденция к увеличению размера веб-страниц сохраняется.
  • В настоящее время набирают популярность стриминговые аудио- и видеосервисы. По состоянию на апрель 2019 года число подписчиков популярного сервиса Spotify составило 217 миллионов.
  • По данным опросов 25% пользователей уходят с веб-страницы, если она загружается дольше 4 секунд. 74% пользователей, загружающих сайт с мобильного устройства, предпочитают не ждать, если загрузка длится более 5 секунд. 46% пользователей отказываются иметь дело с веб-сервисом, если он медленно работает.


О чём свидетельствуют вышеприведенные факты?

О том, что в Интернете с каждым годом становится все больше «тяжелого» контента.

А также о том, что в современном мире огромную роль играет скорость работы веб-сайтов и сервисов. Если скорость слишком мала ― это чревато потерей аудитории, а во многих случаях ― ещё и прибыли. Один из надёжных способов решения этой проблемы ― использование сетей доставки контента (Content Delivery Networks, CDN).

Selectel предлагает услугу CDN с 2014 года, и мы подробно изучили техническую сторону вопроса. В этой статье поговорим об устройстве и особенностях работы современных CDN.

Основные термины


Прежде чем начать предметный разговор об особенностях CDN, определимся с основной терминологией.

CDN (Content Delivery Network) — это географически распределённая сетевая инфраструктура, обеспечивающая быструю доставку контента пользователям веб-сервисов и сайтов. Входящие в состав CDN cерверы географически располагаются таким образом, чтобы сделать время ответа для пользователей сайта/сервиса минимальным.

Ориджин (origin) — сервер, на котором хранятся исходные файлы или данные, раздаваемые через CDN.

PoP (point of presence, точка присутствия) — кэширующий сервер в составе CDN, расположенный в определенной географической локации. Для обозначения таких серверов также используется термин edge.

Динамический контент ― контент, генерируемый на сервере в момент получения запроса (либо изменяемый пользователем, либо загружаемый из базы данных).

Статический контент ― контент, хранимый на сервере в неизменяемом виде (например, бинарные файлы, аудио- и видеофайлы, JS и CSS).

Немного истории и теории


Резкий рост Интернета в середине 1990-х привел к ситуации, что серверы стали с трудом выдерживать нагрузку. С серверами того времени (которые по техническим характеристикам иногда были слабее не самого производительного современного ноутбука) приходилось идти на разные ухищрения: погуглите, например, «‎иерархическое кэширование» и information superhighway ― сейчас эти словосочетания используются разве что в статьях по истории интернет-технологий. Чтобы понять, как развивались технологии раздачи контента, сделаем небольшое теоретическое отступление.

Обратим внимание: раздача статического и динамического контента связаны с разными типами нагрузки на сервер. В случае с динамическим контентом, генерация которого связана с обращениями к базе данных, важны быстродействие процессора и объём оперативной памяти.

Для раздачи статического контента, который в большинстве случаев оказывается очень «‎тяжелым»‎ и который нужно загрузить очень быстро, важна в первую очередь скорость сети. Смысл технических решений для ускорения раздачи статики заключается в следующем: обеспечить горизонтальное масштабирование без сложных двусторонних синхронизаций с основным сервером.

Для снижения нагрузки владельцы веб-сервисов ещё в конце 1990-х годов начали раздавать статику и динамику с разных серверов. Крупные веб-проекты с огромной аудиторией, разбросанной по всему миру, начали размещать серверы со статикой в разных географических точках.

Тогда же, в конце 1990-х, стали появляться компании, у которых организация раздачи статики стала одним из основных направлений бизнеса. В 1998 году студент Массачусетского технологического института Дэниэл Левин и преподаватель математики Томсон Лейтон основали компанию Akamai. Ныне она является одним из крупнейших (если не самым крупным) CDN-провайдером в мире.

Уже в 2004 году CDN использовали более 3000 компаний; общий объем расходов на доставку контента составлял до 20 миллионов долларов в месяц.

Количество CDN во всём мире постоянно растет: соответствующие услуги предоставляют как крупные международные компании (например, Akamai, Amazon, Cloudflare), так и многочисленные региональные провайдеры (подробные обзоры).

CDN используется не только для раздачи статики в строгом смысле слова: распределение контента по многочисленным серверам в разных точках планеты помогает обеспечивать доступность в периоды пиковых нагрузок.

В течение последних 10-12 лет широкое распространение в Интернете получил еще один тип контента ― стриминговый (многочисленные сервисы потокового аудио и видео, которые в наши дни имеют огромную популярность и миллионную, если не миллиардную, аудиторию). Раздача сегодня является еще одним распространенным сценарием использования CDN.

Рассмотрим принципы работы и особенности использования CDN более подробно.

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


Представим себе веб-сервис, которым пользуются люди на всей территории России. Основные серверы расположены в Санкт-Петербурге, а пользователи находятся в самых разных географических точках: скажем, в Краснодаре (2 604,2 км от Петербурга), Новосибирске (3 826,1 км), Иркутске (5 661, 7 км) или Владивостоке (9 602, 4 км). Чем дальше пользователь находится от оригинального сервера, тем больше время «‎оригинального»‎ ответа. На заре Рунета, в самом начале 2000-х, жители Южно-Сахалинска или Петропавловска-Камчатского могли дожидаться полной загрузки простой веб-страницы полновесные 5, а то и все 10, минут.

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

Для ускорения раздачи динамики при использовании CDN используются другие механизмы: CDN-провайдер за счет своей сети сокращает сетевой маршрут.

Ещё один интересный сценарий использования CDN ― так называемый live-streaming: пользователи Интернета со всего мира могут в браузере (а иногда и в специальном приложении) смотреть или слушать трансляцию с мест событий. Устроено это так: один или несколько ориджин-серверов принимают c видеокамеры транслируемый поток, который сразу же ретранслируется на точки присутствия. Ориджин-серверы при этом контент клиентам не раздают. В состав стриминговых CDN входят также балансировщики нагрузки, перенаправляющие запросы к наименее загруженным на текущий момент edge-серверам.

Как организована раздача контента?


Как правило, для настройки раздачи статического контента через CDN необходимо выполнить следующие шаги:

Шаг 1: Вынести статику сайта на отдельный домен, например, static. example.com — это будет origin.

Шаг 2: Для работы через CDN создать домен вида cdn.example.com.

Шаг 3: Подключить CDN у провайдера. Для подключения владельцу веб-сервиса необходимо сообщить провайдеру следующее:

домен, с которого он будет забирать статику — static.example.com;

домен, с которого будет идти раздача — cdn.example.com.

Шаг 4: У своего DNS-регистратора настроить CNAME запись с cdn.example.com на домен CDN-провайдера, который CDN провайдер выделяет при подключении.

Например, в CDN Selectel такой домен имеет вид 85e77c09-bc03-43bf-b8f3-9492ae33390f.selcdn.net, где 85e72c09-bc03-43bf-b8f3-9492ae33390f генерируется автоматически.

Шаг 5: На своем сайте изменить домен для статики, которую планируется раздавать через CDN, на cdn.example.com.

Пользователь набирает в строке браузера адрес www.example.com, с которого он получает HTML-страницу. При этом весь статический контент, например, графические изображения, подгружается из CDN (с адреса cdn. example.com).

Статический контент, предназначенный для раздачи, часто помещается в объектные хранилища. Существует множество плагинов и расширений для популярных CMS (WordPress, Joomla, Drupal, 1C Битрикс и других), с помощью которых можно настроить интеграцию с облачными сервисами хранения и раздачу статики через CDN.

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

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

Как CDN понимает, где находится ближайший кэширующий сервер?


Как правило, для подгрузки контента из CDN используются две популярные технологии: GeoDNS и AnyCast.

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

При использовании технологии Anycast адреса общие, но маршрутизация происходит на «‎свои» серверы в пределах региона. При обращении к адресу www.example.com пользователь переадресуется на ближайшую точку присутствия. Провайдер пользователя получает несколько анонсов от разных сетей, в которых есть точка присутствия, и маршрутизатор провайдера выбирает из них самый близкий. Ответ аналогичным образом возвращается по наиболее короткому маршруту.

Как кэшируется контент?


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

Здесь очень важна география: например, после обращения пользователя из Рио-де-Жанейро данные будут закэшированы на сервере, находящемся на территории Бразилии, что не решит проблемы со скоростью доступа для пользователей из Парижа или Лондона.

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

В большинстве CDN пользователь, отправивший запрос на получение статического контента, переадресуется к ближайшей точке присутствия и получает кэшированную версию этого контента с неё. Если ближайшая точка присутствия не сможет найти файлы, начнётся поиск по соседним точкам присутствия, откуда и будет перенаправлен ответ пользователю. В CDN Akamai эта процедура называется tiered distribution (на русский можно перевести как «многоуровневая раздача»).

Для чего используются CDN?


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

Использование CDN существенно снижает нагрузку на основной сервер, что помогает решить проблему пиковых нагрузок. Современная CDN способна переживать очень большие нагрузки. В конце 2018 года компания Akamai заявила о рекордном объеме передаваемого через CDN трафика: 72 Тб/c.

В наше время CDN активно используются также для раздачи стримингового контента.

О чем важно помнить при работе с CDN?


Как и любая технология, CDN обладает рядом особенностей.

Самая первая проблема, с которой могут столкнуться использующие CDN веб-сервисы ― это задержки кэширования. Вполне вероятна следующая ситуация: на основном сервере файл был изменён, а вот на кэширующих серверах он всё ещё будет лежать в неизмененном виде. Это особенно важно, когда через CDN распространяется часто обновляемый контент (фотографии с места событий, новые версии ПО и так далее)

Чтобы обеспечить доставку «свежего» контента в современных CDN имеется функция очистки кэша, то есть удаление контента из пула кэширования. Кроме того, владельцы сайтов и сервисов могут сами управлять настройками, используя заголовки-валидаторы.

Еще одна сложность связана с блокировками: если по той или иной причине будут заблокированы сервисы, являющиеся вашими «соседями» по IP CDN-провайдера, вместе с вами может оказаться заблокированным и ваш сайт. Но и это проблема решаема: по запросу CDN-провайдеры могут изменить ваш IP-адрес.

Кому нужны CDN?


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

CDN может пригодиться также разработчикам мобильных приложений: по статистике, пользователи часто отказываются продолжать работу с приложением из-за проблем со скоростью. В последнее время появились специальные технические решения, ориентированные на раздачу контента на мобильные устройства. Они так и называются ― Mobile CDNs. Соответствующие услуги предлагают многие крупные CDN-провайдеры ― например, Akamai или Amazon.

Нужны CDN и проектам, ориентированным на распространение игрового, мультимедийного контента и стриминг (об этом уже было сказано выше).

На что обратить внимание при выборе CDN-провайдера (вместо заключения)


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

На что нужно обратить внимание при выборе CDN-провайдера?

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

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

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

В-третьих, на наличие дополнительных услуг и функций. Многие CDN-провайдеры предоставляют такие услуги, как анализ статистики потребления, управление политиками кэширования, управление HTTP-заголовками, предзагрузка очень «тяжёлого» (от 200 МБ и более контента), полная и выборочная очистка кэша.

Кроме того, при выборе CDN-провайдера нужно проверить, поддерживает ли он необходимые вам технологии и протоколы (HTTP/2, IPv6, сертификаты SSL и другие).

Что такое CDN — как работает сеть доставки контента и как выбрать провайдера

Почему «тяжелые» многостраничные порталы с массой графического и видеоконтента порой открываются быстрее, чем сайты с несколькими картинками на страницу? Высокая скорость загрузки ресурса часто говорит о том, что сайт задействует CDN (Content Delivery Network), или сеть доставки контента. 

В статье подробно расскажем о том, что это и как работает CDN-сеть, в чем ее плюсы и минусы. Также дадим рекомендации по выбору провайдера и поделимся статистикой.

Что такое CDN (Content Delivery Network) 

Говоря простыми словами, CDN — это сетевая инфраструктура с распределенной серверной базой, которая предназначена для уменьшения времени доставки контента. 

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

Основные термины CDN

Чтобы лучше понять, как работает технология CDN, введем несколько терминов:

  • Caching Rule (правило кэширования). Правило определяет, как долго ваш контент остается в кэше на пограничном уровне, то есть определяет TTL, время жизни объекта.
  • Edge Node (пограничный узел). Локальные серверы распределены по всему миру, они доставляют кэшированный контент пользователям, сокращая время передачи. Пограничные узлы также можно называть «точками присутствия» (англ. Points of Presence, или PoPs) — разницы между этими терминами нет. Точки присутствия кэшируют контент в течение установленного времени, которое определяется правилами кэширования. 
  • Origin (исходный сервер, сервер-источник или «ориджин»). Это сервер, где хранятся исходные данные и откуда пограничные узлы извлекают нужную информацию. В качестве ориджина могут выступать, например, облачное хранилище или выделенный сервер. CDN может иметь и несколько серверов-источников.
  • Purge (очистка). Под термином Purge понимается механизм и процесс очистки контента на пограничных узлах для последующего обновления из ориджинов. Регулярная очистка и кэширование необходимы для того, чтобы конечные пользователи быстро получали актуальные данные после обновлений на сайте.
  • Restriction (ограничение). Пограничное правило, регулирующее, кто может, а кто не может получать доступ к содержимому из кэша. Примером такого ограничения является разрешение запросов только из определенных доменных зон, регионов или групп IP-адресов.
  • Time to Live, TTL (время жизни). Период времени, в течение которого ресурс кэшируется на пограничном узле (Edge Node, PoP), до того, как будет выполнено новое извлечение данных из источника, Origin.

О типах контента

Что касается данных, они делятся на два типа — статический и динамический.

Динамический контент

Динамический контент — содержимое страницы, которое изменяется в зависимости от ряда факторов: 

  • время посещения, 
  • местоположение пользователя, 
  • устройство, с которого просматривается страница, 
  • и других. 

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

Примеры динамических данных: 

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

Динамические веб-страницы не хранятся в виде статических HTML-файлов. Вместо этого в ответ на такие события, как взаимодействие с пользователем или вход пользователя в систему, генерируется новый HTML-файл, который и отправляется в веб-браузер. 

Так как динамический контент уникален для каждого пользователя, его нельзя кэшировать. Однако развитие технологий CDN позволяет ускорять даже динамический контент. Делать это, правда, могут далеко не все провайдеры, так как за ускорением динамического контента стоит целый список отдельно настраиваемых функций и условий.

Статический контент

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

Примеры статического контента: 

  • HTML-файлы, 
  • изображений, 
  • видео. 

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

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

Браузеры и CDN могут кэшировать статику в течение указанного периода времени (TTL) и предоставлять ее до тех пор, пока она запрашивается. Организовать это несложно, потому что статическое содержимое, в отличие от динамического, не меняется или меняется незначительно – может измениться одна иллюстрация или добавится запятая в текст.

Принцип работы CDN

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

CDN же позволяет загружать контент сразу, буквально в течение нескольких секунд. При этом неважно, находится ли исходный сервер (ориджин — вспоминаем термины) в Петербурге, Каире или Буэнос-Айресе.

Схема работы CDN следующая:

  1. У CDN-провайдера, к которому подключен сайт, есть группа уже настроенных серверов, размещенных на определенной территории (к примеру, в Европе, Азии или в обоих регионах). Эти серверы предназначены для раздачи прежде всего «тяжелого» статического, а также стримингового контента (видео), потому что динамика почти всегда грузится быстро.
  1. Теперь пользователь, который запрашивает страницу, переадресуется уже не к ориджину, а к ближайшему пограничному узлу. То есть для передачи контента задействуется высокопроизводительная сеть CDN-провайдера.
  1. При передаче стриминговых видео, которые записываются в режиме Live, ориджины после получения очередного пакета видеоданных сразу же ретранслируют его на пограничные узлы, с которых видеоконтент загружают ближайшие пользователи. Это и обеспечивает практически мгновенную загрузку тяжелых файлов.

Как организовать раздачу контента

Посмотрим, как это сделать, на примере услуги CDN в Selectel

  1. Переходим в раздел CDN в панели управления.  

2. Нажимаем Создать CDN-ресурс.

3. Вводим имя ресурса, выбираем провайдера (Selectel также предлагает CDN от Akamai).

4. Указываем источник контента — домен вашего сайта (например, ****.com), откуда CDN будет брать статические файлы.

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

Подробнее о том, как работать с Content Delivery Network в Selectel, читайте в базе знаний. 

Вот и все: теперь при загрузке страницы вся статика (прежде всего изображения, анимация, видео) будет подгружаться распределенную инфраструктуру CDN-провайдера. 

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

Попробуйте CDN от Selectel

От 0,35 ₽/ГБ.

Подключить

Как CDN понимает, где находится ближайший кэширующий сервер

Чтобы перенаправлять пользователей к ближайшим точкам присутствия, существуют два решения — GeoDNS и AnyCast. 

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

Когда пользователь запрашивает ваш DNS-сервер, тот ищет местоположение пользователя на основе его общедоступного IP-адреса в пакете запроса и находит ближайшую к этому местоположению точку присутствия. 

Технология основана на алгоритме преобразования IP-адреса в географические координаты. Он известен как geo-IP.

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

Anycast работает немного иначе, но дает аналогичные результаты. Решение связано с протоколом BGP, по которому передается информация о соседних сетях и о топографическом расстоянии до этих сетей. 

Принцип Anycast-рассылки заключается в том, что диапазон IP-адресов объявляется в сообщениях BGP сразу нескольких маршрутизаторов. По мере того, как эта информация распространяется по сети, маршрутизаторы узнают, какой из их соседей обеспечивает кратчайший топографический путь к объявленному IP-адресу и перенаправляют сетевой трафик к этому узлу.

Как кэшируется контент

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

Контент будет кэшироваться только в той точке присутствия, к которой обратился пользователь. Людям из других регионов придется ждать, пока тот же процесс завершится на ближайшем к нему Edge Node. 

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

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

Каким веб-сайтам лучше использовать технологию CDN

Целевыми клиентами CDN-провайдеров являются прежде всего порталы с обилием тяжелого статического контента и стриминговые сервисы. Скорость загрузки ресурсов в этом случае серьезно влияет на опыт пользователей, которые, при серьезном замедлении работы, просто уйдут с «тормозящего» сайта или сервиса. Ускорение работы веб-ресурсов с тяжелым контентом очень важно не только для привлечения аудитории, но и для сохранения лояльности пользователей.

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

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

Для каких проектов и задач необходим CDN

Подробный разбор технологии для бизнеса.

Читать

Теперь мы плавно подошли к рассмотрению плюсов и минусов CDN.

Преимущества использования серверов CDN

Более быстрая доставка контента

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

Например, если ваш веб-сайт находится в России, но вы также получаете трафик из Казахстана, вполне возможно, что у вашего провайдера CDN есть серверы в обеих странах. И провайдер будет использовать эти серверы для подгрузки статики вашего сайта пользователям из Казахстана и соседних стран.

Большее количество одновременных посетителей 

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

Постоянная доступность

Серверы CDN работают всегда, и ваш сайт будет хотя бы частично доступен, даже если на главном сервере случился сбой. Например, основной сервер какого-то СМИ или маркетплейса «прилег» под нагрузкой. Благодаря CDN пользователям будет доступен статический контент из кэша — они смогут почитать часть новостей или полистать «сохранившиеся» карточки продуктов.

Стабильная доставка контента

Это, в частности, касается медиаконтента высокого качества, такого как видео и изображения в высоком разрешении. CDN обеспечивает доставку контента без потери качества и положительно влияет на производительность вашего веб-сайта. Сегодня уже 83% маркетологов заявляют, что видеоконтент помогает им генерировать лидов. Поэтому для бизнеса крайне важно, чтобы можно было предоставлять пользователям такие материалы в высоком разрешении.

Контроль нагрузки на серверы

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

Защита от скачков трафика

Если ваш веб-сайт внезапно испытывает большой приток трафика (например, при публикации «горячих» новостей), это еще один повод воспользоваться услугами CDN. Большая сеть серверов обеспечивает их доступность и масштабируемость в режиме онлайн практически в любых случаях. Многие компании не готовы к значительному росту трафика. Порой не только их сайт, но и хостинг-провайдер не могут с этим справиться из-за отсутствия распределенной сети серверов, между которыми можно «разделить» нагрузку. 

Преимуществ использования CDN достаточно много, давайте теперь рассмотрим недостатки подхода. 

Минусы и возможные альтернативы CDN

Дополнительные расходы

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

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

Расположение точек сети

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

Региональные ограничения

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

Чтобы CDN работал на пользу сайта или сервиса, необходимо соблюдать три условия: 

  1. Пользователи должны загружать один и тот же контент.   
  2. Часто и массово заходить на ресурсы; если ресурс не очень популярный кэширования данных сайта не произойдет. 
  3. Находиться в разных локациях; если весь трафик вы получаете из одной географической точки, CDN будет лишней строчкой в бюджете. 

Потеря конфиденциальности

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

На что обратить внимание: чек-лист по выбору CDN-провайдера

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

Примерный список характеристик хорошего провайдера: 

  • Располагает разветвленной структурой пограничных узлов в регионах, приносящих сайту наибольший трафик.
  • Имеет резервные схемы обхода блокировок по домену или IP-адресу.
  • Гарантирует полную безопасность передачи ценной информации клиента.
  • Имеет безупречный «послужной список», то есть работает долго и без нареканий. У такого веб-сервиса отзывчивая служба поддержки, а клиент уверен, что его сайт будет доступен пользователям 24/7.
  • Предлагает услуги по разумным ценам.

Самостоятельная настройка CDN

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

Поэтому создать собственные эффективные сети доставки и распределения контента по силам только крупным компаниям. Среди них WordPress и конструктор Wix.com, использующие собственные CDN для поддержки сайтов своих клиентов. Разумеется, CDN-сети есть и у таких IT-гигантов, как Google, Microsoft, крупных облачных сервисов и большинства ведущих корпораций в других отраслях (Amazon, Alibaba).

Понимаем, что статистика — вещь довольно скучная, однако это самый наглядный способ продемонстрировать преимущества продукта или технологии. 

В заключение добавим несколько говорящих цифр по CDN: 

  • По итогам 2021 года среднее количество запросов через CDN составило 42,3% от общего числа. При этом в сегменте данных Third party (информация, получаемая из сторонних источников) процент CDN-запросов составил значительно больше половины — 62,8%.
  • Число сайтов из топ-1000 (по количеству посетителей), так или иначе использующих сервисы CDN, в прошлом году достигло 62,3% от общего количества в десктопных версиях и 61,1% — в мобильных.
  • Сайты, входящие в первый миллион рейтинга популярности, тоже активно задействовали технологию Content Delivery Network — по данным 2021 года сетями доставки контента пользовались 32,8% таких сайтов в десктопных версиях и 33,7% — в мобильных.
  • Общий процент запросов через CDN для всех сайтов составил для десктопных версий 27,1%, а для мобильных — 26,9%. Таким образом, более четверти всех ресурсов интернета уже используют CDN для ускорения трафика.

Итак, мы разобрались с определением сети доставки контента и принципами работы CDN. Оценили преимущества и недостатки технологии, рассмотрели, есть ли альтернативы CDN.

Автор: Роман Андреев

Как работают сети доставки контента

Наиболее важным фактором роста рынка сетей доставки контента является взаимодействие конечных пользователей с онлайн-контентом.

Взаимодействие между пользователем и онлайн-контентом сегодня намного сложнее, чем несколько лет назад.

Сегодняшние пользователи с большей вероятностью будут смотреть более длинное видео с мобильного телефона или получать доступ к порталу SaaS, работая дома. Это гораздо более сложный опыт, которого не было пять или около того лет назад. Учитывая ожидаемый рост рынка CDN в ближайшие годы, в этом руководстве будет точно определено, что такое сеть доставки контента и как работает CDN.

Что такое сеть доставки контента?

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

CDN особенно полезны для предприятий, привлекающих большой объем веб-трафика. Платформы потокового видео, такие как Netflix, гиганты социальных сетей, такие как Facebook и гигант электронной коммерции Amazon, все полагаются на CDN для доставки своего контента конечным пользователям.

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

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

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

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

Рассмотрим пользователя в Сингапуре, пытающегося загрузить веб-страницу компании, скажем, поставщика услуг потоковой передачи. Пользователь отправляет запрос на веб-сервер компании для получения всех компонентов страницы. Страница может включать текст, изображения, HTML и динамическое содержимое. Исходный сервер может находиться в любой точке мира. Скажем, в Северной Америке. Теперь этот исходный сервер, на котором хранится весь контент веб-страницы, должен доставлять его в браузер пользователя по всему миру. Этот простой факт географического расстояния может привести к задержкам и проблемам с производительностью.

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

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

Как работает кэширование CDN?

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

Кэширование CDN работает примерно в соответствии со следующими шагами:

  1. Конечный пользователь впервые запрашивает статические ресурсы на вашей веб-странице
  2. Активы извлекаются с исходного сервера и после доставки сохраняются на пограничном сервере кэширования PoP рядом с конечным пользователем.
  3. Когда тот же пользователь в следующий раз запрашивает те же активы, запросы не отправляются на исходный сервер. Вместо этого запросы отправляются к кэшированным файлам с сервера PoP, чтобы проверить, доступны ли сохраненные активы, и доставить их пользователю. Если они недоступны или кэширующий сервер еще не кэшировал активы, запрос снова отправляется на исходный сервер.

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

Почему важно знать, как работает CDN?

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

Они помогают оптимизировать полосу пропускания и время задержки.

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

Например, рассмотрим компанию, занимающуюся облачными играми, или компанию, предоставляющую услуги потокового видео. Их центры обработки данных могут располагаться в Нью-Йорке или Лос-Анджелесе в США. Но их конечные пользователи и потребители могут находиться по всему миру. Для пользователей в Остине или Мэриленде все еще может быть относительно просто загрузить весь свой контент при использовании их услуг. Но как быть с пользователями, находящимися за много миль по всему земному шару в Австралии или Японии? Без CDN каждый из этих пользователей также должен будет каждый раз загружать весь контент, а это приведет к задержкам и непоследовательному взаимодействию с пользователем.

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

Они помогают повысить безопасность веб-сайтов

Распределенный характер CDN делает их идеальными для обработки больших объемов веб-трафика, например, от DDoS-атак, которые в противном случае могут привести к отказу сервера и простою. Такие методы, как балансировка нагрузки HTTP в CDN, помогают предотвращать и обнаруживать такие DDoS-угрозы.

Другая функциональность CDN включает предоставление новых сертификатов TLS/SSL для улучшения стандартов аутентификации, шифрования и целостности. Они также улучшают доступность и избыточность контента и гарантируют, что даже если один сервер отключится, другие смогут получить доступ к веб-трафику. Точно так же CDN могут также предлагать распределенную защиту от отказа в обслуживании или DDoS, распределяя вредоносные запросы по сети.

Помогают контролировать доступ в разные регионы

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

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

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

Они позволяют выполнять предварительную загрузку контента для более быстрой доставки.

Еще одна причина важности CDN — их способность заранее загружать статический контент веб-сайта на пограничные серверы. Статический контент включает такие активы, как изображения, медиафайлы и статические части файлов HTML, CSS или Javascript, которые не меняются часто. Даже динамический контент, такой как приложение WebSocket, которое отслеживает события с сервера, может быть обработан, если существует тесная интеграция между CDN.

Они экономически эффективны для управления трафиком

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

Зачем использовать CDN?

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

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

В этом руководстве описано, как работает CDN, и если вы ищете способ быстро и беспрепятственно доставлять контент своим клиентам, независимо от того, где они находятся в мире, обратитесь к поставщику CDN сегодня.

Облачная безопасность

Как предотвратить DDoS-атаку

Что такое DDoS-атака? Распределенная атака типа «отказ в обслуживании» или DDoS — это распространенный тип кибератаки, когда злоумышленник заполняет

Подробнее »

Корпоративные приложения

Как заблокировать фишинговую электронную почту с помощью модели безопасности с нулевым доверием?

Согласно отчету APWG о тенденциях фишинговой активности, в третьем квартале 2022 года APWG зарегистрировала в общей сложности 1 270 883 фишинговых атаки. Эта тревожная цифра

Подробнее »

404: Страница не найдена

Сеть

Страница, которую вы пытались открыть по этому адресу, похоже, не существует. Обычно это результат плохой или устаревшей ссылки. Мы извиняемся за любые неудобства.

Что я могу сделать сейчас?

Если вы впервые посещаете TechTarget, добро пожаловать! Извините за обстоятельства, при которых мы встречаемся. Вот куда вы можете пойти отсюда:

Поиск

  • Узнайте последние новости.
  • Наша домашняя страница содержит самую свежую информацию о работе в сети.
  • Наша страница о нас содержит дополнительную информацию о сайте, на котором вы находитесь, Networking.
  • Если вам нужно, свяжитесь с нами, мы будем рады услышать от вас.

Просмотр по категории

Унифицированные коммуникации


  • ИТ-специалисты сталкиваются с проблемами, связанными с гибридными рабочими технологиями

    Предприятиям необходимо специализированное оборудование для видеоконференцсвязи в офисных помещениях, которые обычно пустуют, чтобы вместить как офисные . ..


  • Успешная гибридная работа сочетает в себе технологии, политику и культуру

    ИТ-руководители в Enterprise Connect обсуждают свои стратегии успешной гибридной работы, от прозрачных командных соглашений до …


  • Инструменты для совместной работы помогают или препятствуют доступности рабочего места

    Облачные инструменты для совместной работы улучшили доступность рабочего места для людей с ограниченными возможностями. Но ИТ-лидеры должны изучить…

Мобильные вычисления


  • Как защитить мобильные устройства от вредоносного ПО на предприятии

    Смартфоны могут быть так же подвержены угрозам кибербезопасности, как и настольные компьютеры, поэтому организациям важно знать, как …


  • Как создать политику управления мобильными устройствами для вашей организации

    Политика управления мобильными устройствами создает для организации несколько существенных преимуществ, таких как меры безопасности и данные и . ..


  • Как использовать файловый менеджер iPadOS на предприятии

    Организации могут использовать приложение «Файлы» в iPadOS для управления файлами локально или в облаке. Узнайте о плюсах и минусах обоих типов хранения…

Центр обработки данных


  • Стоечный мейнфрейм IBM Z16 предназначен для периферийных вычислений

    Новый мейнфрейм IBM Z16 для монтажа в стойку дает периферийным подразделениям возможность обрабатывать рабочие нагрузки локально, снимая нагрузку с систем …


  • 4 модуля PowerShell, которые должен знать каждый ИТ-специалист

    Узнайте, как использовать четыре самых популярных модуля сообщества PowerShell в галерее PowerShell, чтобы лучше управлять своим …


  • Система Nvidia DGX Quantum объединяет процессоры, графические процессоры с CUDA

    Nvidia и Quantum Machines предлагают новую архитектуру, сочетающую ЦП и ГП с квантовыми технологиями.

    This entry was posted in Популярное