Времена табличной вёрстки и Flash-анимации прошли, а найти сайт с главной страницей размером менее 90 килобайт — челлендж. Современные сайты адаптивны, технологичны и грузится молниеносно. Однако цена такой роскоши — возросший в сотни раз трафик, проходящий через CDN.
В статье мы расскажем о том, что такое CDN, как он работает, на какие параметры стоит обратить внимание при выборе CDN-провайдера.
CDN и его преимущества
CDN (Content Delivery Network) — сеть доставки контента. Если выразиться просто, то CDN — это объединённые по всему миру в одну сеть сервера, которые ускоряют доставку контента от сервера-источника до конечного пользователя.
Какие преимущества дает CDN:
- Улучшение SEO — сайт загружается быстрее и получает более высокий приоритет в поисковой выдаче;
- Снижение расходов на инфраструктуру — не надо докупать дополнительного оборудования или увеличивать мощность сервера-источника. Основную нагрузку забирает на себя CDN;
- Повышение доступности сайта — CDN-сервера резервируют друг друга, и в случае аварий, трафик автоматически направляется на другие сервера сети;
- Подробная статистика — вы получаете актуальную статистику о трафике в реальном времени;
- Глобальное покрытие — ваш сайт одинаково быстро открывается из любой точки мира;
- Снижение нагрузки на сервер-источник — контент подгружается не напрямую, а с серверов CDN.
Может показаться, что CDN — это сложно, а сама услуга должна стоить недешево. Но это не так! В работе CDN нет ничего сложного, а стоимость услуги невелика. К примеру, у 1cloud одна из самых низких цен на рынке CDN-услуг.
С преимуществами и ценами всё понятно, настало время разобраться в устройстве CDN.
Как работает CDN: кэширование и шилдинг
Кэширование — это загрузка контента с сервера-источника на CDN-сервера, с которых он раздаётся посетителям сайта в зависимости от их географического местоположения. То есть, когда на московский сайт заходит посетитель из Сахалина или Хабаровска, то контент будет загружаться не из Москвы, а из Владивостока. Естественно, это положительно скажется на скорости загрузки сайта.
CDN может отдавать любой статический контент: картинки, видео, JS-скрипты и многое другое. К примеру, без CDN невозможно было бы без задержек смотреть фильмы через Netflix и пользоваться социальными сетями.
Однако контент кэшируется не мгновенно. Возможна ситуация, когда на сервере-источнике файл был изменён, а на кэширующих серверах он некоторое время находится в неизмененном виде. Для предотвращения подобных ситуаций администратору необходимо правильно настроить сценарии обновления кэша.
Для настройки кэширования администратор может применять различные инструменты. К примеру, он может разделить контент по приоритетности загрузки и сделать так, чтобы весь «тяжёлый» контент хранился в памяти CDN-серверов дольше или не удалялся вообще.
Ещё одна распространённая проблема при загрузке контента в кэш CDN-серверов: задержка отображения контента при первом обращении к CDN. Для решения этой проблемы администратор может заранее «прогреть» сеть, принудительно разместив контент в кэше серверов.
Поскольку кэширование — это цикличный процесс, который создаёт нагрузку на сервер. Суммарная нагрузка от запросов пользователей и CDN может вывести сервер-источник из строя. Для защиты сервера-источника используют шилдинг (от английского “shield” — щит).
Принцип работы шилдинга следующий: между основным сервером и CDN устанавливается промежуточный сервер, который первый кеширует контент и раздает его другим CDN-серверам.
В итоге: нагрузка на основной сервер снижается, время его отклика не увеличивается, кэш на CDN-серверах обновляется без задержек.
Защищая сервер-источник от перегрузок, шилдинг повышает отказоустойчивость CDN и снижает нагрузку на сетевых администраторов. Поэтому при выборе CDN-провайдера стоит обратить внимание на наличие этой услуги. Кстати, у 1cloud шилдинг можно подключить прямо из Панели управления.
С кешированием контента разобрались. Рассмотрим теперь технологии, которые использует CDN.
Технологии DNS: GeoDNS и AnyCast
Обычно CDN имеет глобальное покрытие, а на сайтах провайдеров размещены карты с точками присутствия. К примеру, у 1cloud есть 650 кэш-серверов по всему миру.
Для определения ближайших кэширующих серверов к пользователям, используются две DNS-технологии: GeoDNS и AnyCast.
С помощью GeoDNS можно привязать к одному доменному имени несколько IP-адресов. В зависимости от географического положения (определяется по IP-адресу, с которого пришел запрос) пользователь перенаправляется на ближайший к нему сервер.
При технологии anycast нескольким географически распределенным серверам назначается один и тот же IP-адрес (IPv4 или IPv6), называемый anycast-адресом. Идея такого подхода состоит в том, чтобы не выбирать из списка наиболее подходящий сервер вручную, а положиться на выбор системы маршрутизации.
В сухом остатке: для определения местоположения пользователя используются GeoDNS и anycast. Обе технологии не требуют настроек и работают автоматически, самостоятельно выбирая ближайшие к клиенту CDN-сервера.
Настройка кэширования и CDN невозможна без мониторинга. Мониторинг позволяет тонко настроить балансировку нагрузки, управлять сценариями кеширования контента, отслеживать неполадки и экономить на трафике.
Источник информации для мониторинга — это логи CDN-серверов. Они содержат статусы серверов, время обращения клиентов, IP-адреса клиентов, запрошенный контент и многое другое. На основе логов формируется статистика работы сети.
Анализ CDN-логов и статистики помогает сократить расходы на трафике и сбалансировать сеть. Однако не все CDN-провайдеры предоставляют подобные данные и инструменты.
В Панели управления CDN 1cloud, в разделе анализа статистики есть сведения по уникальным посетителям, запросам и трафику. Данные представлены графиками с возможностью фильтрации по географии запросов, устройствам, браузерам, операционным системам. Благодаря такой визуализации администратор может гибко настраивать CDN и управлять трафиком.
Итак, мы рассказали о том, что такое CDN, как он работает, как устроен и какими преимущества обладает. Рассмотрели технологии кэширования и инструменты анализа нагрузки. Обобщим полученные знания и приведем список параметров надежного CDN-провайдера.
Вывод
CDN — это объединённые по всему миру в одну сеть сервера, которые ускоряют доставку статического контента от сервера-источника до конечного пользователя. Контент кэшируется с сервера-источника на CDN-сервера, и уже оттуда раздается посетителям сайта, в зависимости от их местоположения.
CDN может отдавать любой статический контент: картинки, видео, JS-скрипты и многое другое. Кэшированием контента управляет администратор. Он может настроить принудительную загрузку контента на CDN-сервера, разбить контент на категории и назначить приоритетность кэширования, задать время жизни кэша и многое другое.
На основе технических свойств и особенностей CDN можно составить список параметров надёжного CDN-провайдера.
Топ-5 параметров надёжного CDN-провайдера
При выборе CDN-провайдера стоит обратить внимание на следующие параметры:
- Количество точек присутствия и зона покрытия.
Обычно крупные CDN-провайдеры сразу указывают количество стран и город присутствия, а также дают карту покрытия. - Взаимодействие с операторами связи.
От взаимодействия CDN-провайдера с операторами связи зависит скорость и эффективность работы CDN. Например, у CDN-провайдера с точками присутствия в 100 городах, но небольшим количеством стыков с оператором связи задержка может быть больше, чем у провайдера, у которого точки присутствия расположены в 5 городах, но стыков с операторами связи гораздо больше. - Панель и инструменты управления услугами.
Удобная панель управления с богатым инструментарием управления услугами — это показатель того, что у CDN-провайдера есть штат технических специалистов, которые не просто занимаются техническим обслуживанием сервисов, а ещё развивают инструменты и сервисы панели. - Безопасность.
Сайт, ровно так же как и кэширующие CDN-сервера должны быть защищены криптографическим сертификатом SSL и работать по протоколам HTTP/2 и IPv6. - Цена.
Благодаря налаженным техническим процессам, профессиональному оборудованию, тесному взаимодействию с провайдерами связи, крупные CDN-провайдеры устанавливают небольшие расценки на услуги.
В заключение отметим, что CDN-провайдера необходимо выбирать исходя из бизнес-задач. Наши технические специалисты готовы бесплатно проконсультировать вас и подобрать оптимальное решение под ваши задачи.