Сеть доставки контента (CDN) представляет собой набор распределенных узлов, называемых краевых серверов, подключенных к тем же серверам происхождения и размещенных локальных к местоположению пользователей. Если вы используете CDN, содержимое вашего веб-сайта доставляется пользователю с ближайшего сервера края к их местоположению. Без CDN, вы ставите нагрузку на сервер происхождения каждый раз, когда пользователь просит что-то. Если у вас есть много посетителей на вашем сайте, было бы болото вниз ваш сервер делает его медленнее реагировать и даже хуже, стать безответным для пользователей.
Как работает CDN
Думайте о CDN как о дереве, корень которого является вашим сервером происхождения, а серверы края — узлами дерева. Когда новый контент доступен на сервере происхождения, он распространяется и кэшируются на всех серверах края. Теперь, когда пользователь делает запрос DNS, он прерывается CDN, и содержимое подается с ближайшего сервера края. Существует два основных подхода к реализации стратегии кэша CDN:
Нажмите сети. Когда любой новый контент загружается на веб-сайт, сервер происхождения толкает этот новый контент на CDN. Затем CDN принимает это новое содержимое и распространяет все его края серверов, чтобы кэшировать его там. По сути, это стратегия предварительного кэширования, когда мы минимизируем удар и промах, когда запрос на ресурс делается впервые в сети. Кэшированный контент доступен пользователю с краевого сервера для последующих запросов.
Потяните сети. В этой стратегии нет предварительного кэширования. Когда любой ресурс запрашивается в первый раз, CDN переходит на сервер происхождения, забирает содержимое и обслуживает его пользователю. Это содержимое затем распространяется на все серверы края и положить в кэш на краях серверов. В этой стратегии происходит хит-и-мисс, увеличивая время первой нагрузки.
Какой из двух подходов вы используете, зависит от вашего случая использования и CDN поставщика вы используете. Тип содержания также играет важную роль здесь, но смешанный подход как толчок и тянуть стратегии является лучшим, когда дело доходит до полного использования власти и преимущества CDN.
Статический и динамический контент
Теперь, не каждый кусок контента на вашем сайте может быть кэширован, так что давайте поговорим немного о типах контента, прежде чем погрузиться глубоко в лучшую стратегию предварительного кэширования с использованием синтетического мониторинга.
Статический контент в основном любой файл, который хранится на сервере, например, изображения, видео, PDF-файлы, HTML файлы, CSS файлы, JavaScript файлы и т.д. он не меняется с течением времени, так что статическая копия кэшируются и обслуживается с ближайшего сервера края. Браузер также может кэшировать статическое содержимое до истечения срока действия и служит локально с компьютера.
Динамический контент, однако, генерируется на стороне сервера в ответ на запрос пользователя в зависимости от местоположения, устройства, времени, личных настроек и т.д. В какой-то момент динамическое содержимое не удалось кэшировать, но по мере развития технологий динамическое содержимое тоже можно кэшировать и обслуживать с краевого сервера.
Существует важный момент, чтобы отметить здесь с точки зрения бизнеса. Если вы не предварительно кэшировать данные, впервые пользователи, скорее всего, столкнутся с хитом и пропустить, тем самым увеличивая задержку и с более медленной реакцией. С каждой секундой задержки, показатель отказов вашего сайта увеличивается. 9,6 процента посетителей отказов, когда время загрузки страницы составляет 2 секунды и 32,3 процента пользователей отказов, если это 7 секунд. Такие цифры могут привести к значительному падению доходов.
Чаще всего, независимо от типа содержимого, CDN имеет срок действия набора для очистки кэшированного содержимого и привлечения нового содержимого с сервера происхождения. Эти варианты истечения срока действия могут быть следующими:
- Происхождение контролируется
- Спецификация TTL (время жить)
- Никогда не истекает
- Не кэшировать
Если пользователи из определенных мест не делают запрос на определенное содержимое и содержание истекло, то в зависимости от вашей стратегии истечения кэша, они также могут столкнуться с хитом и пропустить сценарий в результате чего более отказов для вашего сайта. С внедрением CDN мы получаем три основных преимущества:
- Производительность. Ускорение производительности веб-сайта за счет снижения задержки и нагрузки на серверы.
- Доступности. Сделать ваши данные более доступными для борьбы с сбоем сервера и низкой пропускной способностью.
- Безопасности. Увеличение общей емкости сервера с использованием CDN для уклонения от DDoS и других сетевых атак на данные.
Таким образом, предварительное кэширование данных на передовых серверах с использованием эффективной стратегии CDN даст вам всевозможные преимущества. Но вопрос в том, с интерактивными веб-сайтами, динамическим контентом и сложными путями пользователей, как предварительно кэшировать данные? Ответом является распределенный синтетический мониторинг.
А как насчет префетирования? Предварительное кэширование против предрассовки Разъяснения
При исследовании лучших способов мониторинга предварительно кэшированных активов, вы, возможно, наткнулись на термины “предустановка” (без дефиса) и префетирование. В связи с этим возникает вопрос: в чем разница между этими терминами (если таковые имеются) и как это влияет на выбор решения для синтетического мониторинга?
Проще говоря, нет никакой значимой разницы между этими терминами. Кроме того, ни одна организация стандартов не определила эти термины отдельно.
Тем не менее, стоит отметить, что некоторые конечные пользователи используют термин «предварительная выборка» как более частый и ограниченный по времени, в том смысле, что предварительная выборка используется для ресурсов, которые понадобятся немедленно, доступны только один раз и могут быть отброшены/удалены после их использования.
В отличие от этого, многие из тех же конечных пользователей считают, что термин «предварительное кэширование» (иногда пишется как «предварительное кэширование» без дефиса) используется при описании активов, к которым будет обращаться несколько раз, а также которые будут храниться в течение более длительных периодов времени.
Некоторые программные и веб-компании определяют эти термины независимо, а также, на основе своих собственных платформ. Например, Google использует термин “предустановка” (без дефиса), чтобы сослаться на то, как загрузка активов может контролироваться в их веб-приложении Workbox.
В конечном счете, самое главное, чтобы забрать то, что нет никакой значимой разницы между терминами, и они, как правило, используются взаимозаменяемо в веб-сообщества развития. Однако, если вы хотите контролировать определенный тип веб-приложения, возможно, захотите убедиться, что вы понимаете, как эти термины определяются или используются в рамках этой конкретной структуры.
Синтетический мониторинг
Синтетический мониторинг является механизмом мониторинга веб-сайтов и приложений путем моделирования пользователей в интерактивной среде с помощью инструментов и скриптов. Эти инструменты выполняют обход возможных управляемых путей и бизнес-транзакций круглосуточно. Реализуя синтетический мониторинг для ваших сайтов и приложений, вы получаете важную информацию о производительности, такую как задержка, доступность, сломанные транзакции и т.д. Есть много сторонних вариантов SaaS доступны, но вы хотели бы выбрать один с широким спектром решений мониторинга. Как правило, эти решения имеют кнопку и идти установки и получить вас готовы в нужное время.
Например, решение для мониторинга веб-приложений от Dotcom-Monitor включает в себя инструмент для записи сценариев, называемый EveryStep Web Recorder. Просто перейдите через ваш веб-сайт или приложение, как один из ваших пользователей будет создавать сценарии, которые можно использовать для мониторинга веб-приложений.
Предварительное кэширование CDN Edge служит с синтетическим мониторингом
Если вы используете CDN, Синтетическая настройка мониторинга для нескольких мест будет использовать распределенную систему для выполнения синтетического мониторинга на каждом сервере края для имитации локализованных пользователей. Таким образом, запрашивая содержимое раньше любого пользователя, предварительно кэшировать содержимое, и свести к минимуму первый хит-и-мисс и время загрузки почти для всех ваших пользователей. Поскольку синтетические мониторы настроены для выполнения тестов в промежутках круглосуточно, они максимизируют шансы обнаружения нового контента, загруженного раньше, чем любой пользователь может. Таким образом, предварительное кэширование содержимого в зависимости от местоположения, времени и устройства и предоставление серверам края CDN для обслуживания содержимого быстрее и эффективнее.
Преимущества предварительного кэширования серверов CDN Edge
- Мониторинг времени простоя веб-сайта между различными конечных пользователей в нескольких местах.
- Предварительная кэширование содержимого для ускорения первого времени загрузки.
- Очистка и замена просроченного кэша CDN для борьбы с частыми ударами и промахами.
- Мониторинг сложных бизнес-транзакций и потока процессов.
- Обнаружение сбоев серверов и приложений и внедрение сбоу в работе.
- Обнаружить и устранить проблемы, прежде чем они влияют на конечных пользователей.
- Базовый и бенчмаркинг для стратегий совершенствования.
- Анализируйте UX с точки зрения конечных пользователей.
Если вы используете CDN, но не реализовали синтетический мониторинг, вы можете иметь синтетический мониторинг на месте для вашего приложения, чтобы сделать лучшее из механизма доставки контента и стойки в бессознательно потерянный доход.
Попробуйте полную версию платформы Dotcom-Monitor бесплатно.