Москва
Мероприятия
Блог
Войти
main-bg
Блог

Как сократить время загрузки веб-сайта на 30% и увеличить лояльность пользователей

Знаете, почему «подвисают» те или иные сайты?? Браузеры тратят слишком много времени, ожидая команды – что делать дальше. Это ожидание влияет на производительность загрузки страницы. Но существуют готовые решения, которые помогают значительно увеличить скорость загрузки веб-страниц, одно из них – стандарт Early Hints.

В первоначальных тестах с использованием Early Hints можно было наблюдать более чем 30% сокращение времени загрузки страницы для браузеров, впервые посещающих веб-сайт.

Коротко об Early Hints

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

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

Более формально Early Hints — это веб-стандарт, который определяет новый код состояния HTTP (103 Early Hints) и новые взаимодействия между клиентом и сервером. 103 передаются клиентам, пока готовится ответ 200 OK (или ошибка) — так называемое «время обдумывания сервера» —, и содержат подсказки о том, какие ресурсы, вероятно, потребуются для полной визуализации веб-страницы сайта. Эти подсказки ускоряют загрузку страницы и в целом снижают задержку на стороне пользователя.

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

  1. 103 — это экспериментальный код состояния, который источник может не выдавать самостоятельно, в основном по причинам устаревания. Большая часть механизмов, обеспечивающих работу сети, ошибочно полагает, что HTTP-запросы всегда соответствуют HTTP-ответам один к одному. Эта ошибочная предпосылка встроена в большую часть ПО HTTP-серверов, что затрудняет отправку исходными серверами ответов Early Hints 103 до «окончательного» ответа 200 OK.Серверы Cloudflare аккуратно обходят эти технические проблемы.
  2. Сеть Cloudflare очень близка к конечным пользователям. Это означает, что подсказки предоставляются очень быстро, заполняя даже самые маленькие блоки серверной памяти полезной информацией, которую клиент может использовать для быстрого старта загрузки ресурсов.
  3. Cloudflare видит поток запросов и ответов от своих клиентов и использует эти данные для автоматического создания подсказок, при этом клиенту вообще не нужно вносить какие-либо изменения на исходных серверах.

Как ускорить «медленную» динамическую загрузку страниц?

Типичный цикл запрос/ответ между браузерами и серверами оставляет много места для оптимизации. Когда вы вводите адрес в строку поиска своего браузера и нажимаете Enter, происходит ряд событий, которые помогают вам получить нужный контент как можно быстрее. Ваш браузер сначала преобразует имя хоста в URL-адресе в IP-адрес, а затем устанавливает начальное соединение с сервером, на котором хранится контент.

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

После получения ответа на исходную HTML-страницу браузеру необходимо проанализировать страницу, сгенерировать объектную модель документа (DOM) и начать загрузку подресурсов, указанных на странице, таких как изображения, сценарии, javascript js и дополнительные таблицы css стилей сайта.

Давайте посмотрим на это в действии. Ниже приведен анализ производительности для страницы оформления заказа на сайте pinecoffeesupply.com, кафе с витриной на сайте Shopify:

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

Попытка распараллелить эту зависимость — вот в чем суть Early Hints — продуктивное использование этого «времени на обдумывание сервера», чтобы помочь браузеру выполнить критические шаги для рендеринга страницы до того, как будет получен полный ответ сервера. Зеленая «думающая» полоса перекрывает синюю «загрузочную» полосу, позволяя браузеру и серверу готовить страницу одновременно. Больше не нужно ждать.

«Предприниматели знают, что первое впечатление имеет значение. Собственные данные Shopify показывают, что в среднем, когда магазин увеличивает скорость загрузки первой страницы на пути покупателя на 10%, конверсия увеличивается на 7%. Мы видим большие перспективы в Early Hints. Он является еще одним инструментом, помогающим улучшить производительность и удобство для всех продавцов и клиентов ". - dell-ai-factory" target="_blank" title="Dell">dell">Колин Бенделл , директор по проектированию производительности в Shopify

Как Early Hints ускоряет работу?

Early Hints — это код состояния, используемый в неокончательных HTTP-ответах. Он разработан для ускорения общего времени загрузки страницы, давая браузеру ранний сигнал о том, какие определенные связанные ресурсы могут появиться в окончательном ответе. Браузер принимает эти подсказки и начинает подготовку страницы к тому моменту, когда придет последний ответ 200 OK от сервера.

Перед вами пример того, как цикл запроса / ответа будет выглядеть с Early Hints:

Запрос клиента:

GET / HTTP/1.1  Host: example.com
Ответы сервера:

Подсказка Early Hints

HTTP/1.1 103 Early Hints      Link: </style.css>; rel=preload; as=style      Link: </script.js>; rel=preload; as=script

⏱ ... Время обдумывания сервера ... ⏱

Полный ответ:

HTTP/1.1 200 OK      Date: Thurs, 16 Sept 2021 11:30:00 GMT      Content-Length: 1234      Content-Type: text/html; charset=utf-8      Link: </style.css>; rel=preload; as=style      Link: </script.js>; rel=preload; as=script [Rest of Response]

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

Но это не новая идея!

Разве серверные уведомления не пытались решить эту проблему?

Были и предыдущие попытки решить этот вопрос, например HTTP / 2 «server push». Тем не менее, серверные уведомления имели две основные проблемы:

Решение проблемы с курицей и яйцом

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

В Cloudflare решили эту проблему несколькими способами:

  1. Тесное партнерство с Google Chrome и другими командами разработчиков браузеров для одновременной поддержки одного и того же стандарта при обеспечении критической массы принятия Early Hints с первого дня.
  2. Разработка способов отправки подсказок мобильным и периферийным устройствам клиентов с поддержкой стандарта без необходимости поддержки стандарта со стороны источника. Поддержка Early Hints будет реализована двумя способами: один функционирует сейчас, а другой появится в ближайшее время.

Сейчас:

Чтобы не требовать от источников отправления ответов 103 напрямую, применяется подход, который использует то, что многие клиенты уже использовали, чтобы указать, от каких ресурсов зависит HTML-страница, — заголовок ответа Link:

  • Когда Cloudflare получит ответ от источника, он будет проанализирован на предмет заголовков ссылок с типами preload или preconnect rel. Эти типы rel указывают браузеру, что ресурс должен быть загружен как можно скорее (предварительная загрузка) или что необходимо установить соединение с указанным источником, но не передавать байты (предварительное подключение).
  • Cloudflare берет эти заголовки и кэширует их на границе своей сети, готовыми к использованию в качестве полезной нагрузки 103 Early Hints.
  • Когда поступают последующие запросы на этот актив, Cloudflare немедленно отправляет браузеру кэшированный ответ Early Hints, одновременно передавая запрос исходному серверу для генерации полного ответа.
  • Затем Cloudflare передает полный ответ от источника в браузер, когда он доступен.
  • Когда будет доступен полный ответ, он будет содержать заголовки ссылок. Cloudflare сравнит заголовки ссылок в ответе 200 с кэшированной версией, чтобы убедиться, что они самые актуальные. Если они изменились с момента кэширования, устаревшие Early Hints будут автоматически удалены, а новые – повторно кэшированы.

Скоро: Smart Early Hints на пороге

Новая версия Smart Early Hints будет использовать машинное обучение для генерации Early Hints, даже если в ответе нет заголовка Link, из которого может быть собран ответ 103. Анализируя исторические циклы запрос/ответ для клиентов, можно сделать вывод, какие активы предварительно загружены. Это поможет браузерам быстрее загружать сайты, благодаря уменьшению кол-ва запросов.

Smart Early Hints появится в ближайшие несколько месяцев.

Поддержка браузеров

Тесное сотрудничество с Google Chrome и другими поставщиками браузеров гарантирует надежное взаимодействие Early Hints и Cloudflare. Google Chrome, Microsoft Edge и Mozilla Firefox объявили о своем намерении поддерживать Early Hints.  Ожидается, что еще больше браузеров объявят о поддержке в ближайшее время.

Сравнительный анализ воздействия Early Hints

После того, как вы примете участие в бета-тестировании и включите эту функцию, вы сможете увидеть ранние подсказки в действии с помощью Google Chrome версии 94 или выше. К примеру, по состоянию на 16 сентября 2021 года канал Chrome Dev находился на версии 94.

Тестирование Early Hints в Chrome версии 94 или выше

Поддержка Early Hints доступна в Chrome при запуске (на Mac при условии, что работает тот же флаг, что и для Windows или Linux):

open /Applications/Google\ Chrome\ Dev.app --args --enable-features=EarlyHintsPreloadForNavigation

Тестирование Early Hints с помощью теста веб-страницы

  1. Откройте сайт webpagetest.org (бесплатный инструмент для тестирования производительности).
  2. Укажите желаемый тестовый URL. Он должен иметь необходимые типы rel preload / preconnect в заголовке Link ответа.
  3. Выберите Chrome Canary (или любую версию Chrome выше 94) в качестве браузера.
  4. В расширенных настройках выберите Chromium.
  5. Внизу раздела Chromium есть раздел командной строки, куда вы должны вставить флаг Chrome Early Hints:--enable-features=EarlyHintsPreloadForNavigation.

Чтобы увидеть сравнение загрузки страниц, вы можете удалить этот флаг, и Early Hints не будут включены.

Кроме того, можно проверить с помощью Chrome в Trials Origin.

Используя тест веб-страницы, можно было наблюдать более чем 30% улучшение загрузки содержимого страницы в браузере, измеренное с помощью Largest Contentful Paint (LCP). Пример тестового диафильма:

Несколько рекомендаций перед тестированием Early Hints 

  • Chrome не поддерживает Early Hints по HTTP / 1.1 (или более ранним протоколам).
  • Chrome не поддерживает Early Hints по запросам дополнительных ресурсов.
  • При тестировании стоит понаблюдать, как различные типы rel повышают производительность наряду с другими улучшениями производительности Cloudflare, такими как Argo.
  • Может быть трудно сразу распознать, какие ресурсы действительно загружаются на ранней стадии из-за возникающих подсказок. Запрос ResourceTiming API вернет initiator = EarlyHints для этих ресурсов.

Подписка на бета-версию Early Hints

Решение Early Hints должно произвести революцию в веб-производительности. Поддержка стандарта осуществляется командой CloudFare по всему миру и активно тестируется клиентами, жаждущими скорости.

Как подписаться на бета-версию Cloudflare Early Hints:

  1. Войдите в свою учетную запись Cloudflare.
  2. На панели управления перейдите на вкладку Скорость.
  3. Нажмите на раздел Оптимизация.
  4. Найдите карточку регистрации на бета-версию Early Hints и запросите доступ. Доступ для пользователей из бета-списка предоставляется партиями.

 

Появление Early Hints обещает ускорить работу всех пользователей в Интернете. По мнению Cloudflare функции именно этого продукта должны быть бесплатными для всех.

 

Чтобы узнать больше о том, какие компетенции по продуктам Cloudflare есть у компании Софтлайн, посетите онлайн-конференцию «Сделай свои web-ресурсы надежнее, быстрее и безопаснее с Cloudflare», которая состоится 18 октября в 11-00 на платформе ZOOM. Ссылка на регистрацию: https://softline.ru/events/sem_online_ru_cloudflare_211018?tab=registration. 

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

В браузере Chrome есть встроенный плагин Lighthouse (аналог Pagespeed) который поможет при проведении аудита по оптимизации сайта на выявление тяжелых ресурсов для загрузки на мобильных устройствах.

Теги:

Новости, истории и события
Смотреть все
Группа «Борлас» (ГК Softline) и «УМКАаддитех» объединяют компетенции в области искусственного интеллекта, генеративного проектирования и аддитивного производства
Новости

Группа «Борлас» (ГК Softline) и «УМКАаддитех» объединяют компетенции в области искусственного интеллекта, генеративного проектирования и аддитивного производства

11.08.2026

ГК Softline повышает эффективность внутренней техподдержки с помощью собственного ИИ-сервиса
Новости

ГК Softline повышает эффективность внутренней техподдержки с помощью собственного ИИ-сервиса

10.08.2026

Bell Integrator FabricaONE.AI (акционер – ГК Softline) разработала решение по онлайн-перевыпуску сертификатов электронной подписи для крупного российского банка
Новости

Bell Integrator FabricaONE.AI (акционер – ГК Softline) разработала решение по онлайн-перевыпуску сертификатов электронной подписи для крупного российского банка

10.08.2026

Серверы «Инферит Техники» (кластер «СФ Тех» ГК Softline) подтвердили совместимость с решением Sharx Storage 2.x для хранения данных
Новости

Серверы «Инферит Техники» (кластер «СФ Тех» ГК Softline) подтвердили совместимость с решением Sharx Storage 2.x для хранения данных

05.08.2026

Проект ООО «ЦЦТ» (Группа «Борлас», ГК Softline) по цифровизации производственной безопасности в FESCO номинирован на конкурс «1С:Проект года»
Новости

Проект ООО «ЦЦТ» (Группа «Борлас», ГК Softline) по цифровизации производственной безопасности в FESCO номинирован на конкурс «1С:Проект года»

04.08.2026

ActiveCloud запустил в России мониторинг ИТ-инфраструктуры по подписке
Новости

ActiveCloud запустил в России мониторинг ИТ-инфраструктуры по подписке

31.07.2026

Решение ExeMES от Exeplant fabricaONE.AI (акционер - ГК Softline) вошло в топ российского рынка систем управления производством (MES) по версии TAdviser
Новости

Решение ExeMES от Exeplant fabricaONE.AI (акционер - ГК Softline) вошло в топ российского рынка систем управления производством (MES) по версии TAdviser

31.07.2026

ГК Softline разработала ИИ-классификатор для автоматической обработки обращений
Новости

ГК Softline разработала ИИ-классификатор для автоматической обработки обращений

31.07.2026

MD Audit (SL Soft FabricaONE.AI, акционер – ГК Softline) провел исследование развития ERP-систем и определил, как ИИ трансформирует управление бизнесом в 2026–2028 годах
Новости

MD Audit (SL Soft FabricaONE.AI, акционер – ГК Softline) провел исследование развития ERP-систем и определил, как ИИ трансформирует управление бизнесом в 2026–2028 годах

30.07.2026

Bell Integrator FabricaONE.AI (акционер – ГК Softline) реализует проект по доработке интеграционной шины для энергосбытовой компании
Новости

Bell Integrator FabricaONE.AI (акционер – ГК Softline) реализует проект по доработке интеграционной шины для энергосбытовой компании

30.07.2026

ГК Softline вошла в топ крупнейших ИТ-компаний России
Новости

ГК Softline вошла в топ крупнейших ИТ-компаний России

29.07.2026

ГК Softline создала для машиностроительного предприятия единую цифровую среду конструкторско-технологической подготовки производства
Новости

ГК Softline создала для машиностроительного предприятия единую цифровую среду конструкторско-технологической подготовки производства

28.07.2026

«Софтлайн Решения» (ГК Softline) пополнила продуктовый портфель платформой UVATRON Lite
Новости

«Софтлайн Решения» (ГК Softline) пополнила продуктовый портфель платформой UVATRON Lite

27.07.2026

«Инферит ИТМен» (кластер «СФ Тех» ГК Softline) выпустил обновление 7.2 с самодиагностикой и упрощенной настройкой сетевого сканирования
Новости

«Инферит ИТМен» (кластер «СФ Тех» ГК Softline) выпустил обновление 7.2 с самодиагностикой и упрощенной настройкой сетевого сканирования

24.07.2026

ГК Softline выстраивает собственный сквозной стек ИИ-разработки и масштабирует его на всю группу компаний
Новости

ГК Softline выстраивает собственный сквозной стек ИИ-разработки и масштабирует его на всю группу компаний

23.07.2026

Infosecurity (ГК Softline) представила услугу для цифровой защиты первых лиц и ключевых сотрудников компаний – CYBERID
Новости

Infosecurity (ГК Softline) представила услугу для цифровой защиты первых лиц и ключевых сотрудников компаний – CYBERID

23.07.2026

SL Soft fabricaONE.AI (акционер – ГК Softline) представила ИИ-ассистент для автоматического оповещения об атаках и чрезвычайных ситуациях
Новости

SL Soft fabricaONE.AI (акционер – ГК Softline) представила ИИ-ассистент для автоматического оповещения об атаках и чрезвычайных ситуациях

22.07.2026

ГК Softline получила аккредитацию на обновление «С-Терра Шлюз» до версии 5.0
Новости

ГК Softline получила аккредитацию на обновление «С-Терра Шлюз» до версии 5.0

22.07.2026

HaaS: что обсудить с провайдером до подписания договора
Блог

HaaS: что обсудить с провайдером до подписания договора

12.08.2026

Обмен файлами в компании: как избавиться от технологического зоопарка SFTP-серверов и скриптов
Блог

Обмен файлами в компании: как избавиться от технологического зоопарка SFTP-серверов и скриптов

05.08.2026

Российские системы управления проектами: какие решения заменили Jira и Trello — опыт компаний
Блог

Российские системы управления проектами: какие решения заменили Jira и Trello — опыт компаний

04.08.2026

Реестровое оборудование 2026: тренды российского рынка и экономия на налоговых льготах
Блог

Реестровое оборудование 2026: тренды российского рынка и экономия на налоговых льготах

03.08.2026

Какие бизнес-процессы автоматизировать в 2026 году для быстрого результата
Блог

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

03.08.2026

Внедрение ИИ, которое окупается: портфель готовых услуг + комплексный подход
Блог

Внедрение ИИ, которое окупается: портфель готовых услуг + комплексный подход

27.07.2026

UEMaaS: как управлять смартфонами, планшетами, ноутбуками и рабочими станциями из одной консоли
Блог

UEMaaS: как управлять смартфонами, планшетами, ноутбуками и рабочими станциями из одной консоли

17.07.2026

Как понять, что вашу инфраструктуру уже взломали
Блог

Как понять, что вашу инфраструктуру уже взломали

08.07.2026

«Железо» без дефицита: российские компьютеры на базе DDR5
Блог

«Железо» без дефицита: российские компьютеры на базе DDR5

03.07.2026

PAM-системы в 2026 году: от хранилища паролей до интеллектуального щита для инфраструктуры
Блог

PAM-системы в 2026 году: от хранилища паролей до интеллектуального щита для инфраструктуры

02.07.2026

Аутсорсинг ИТ. 10 задач, которые выгоднее передать внешнему партнеру
Блог

Аутсорсинг ИТ. 10 задач, которые выгоднее передать внешнему партнеру

26.06.2026

Как быстро купить лицензионное ПО: пошаговая инструкция
Блог

Как быстро купить лицензионное ПО: пошаговая инструкция

25.06.2026

Почему промышленный ИИ остается локальным инструментом — и что с этим делать
Блог

Почему промышленный ИИ остается локальным инструментом — и что с этим делать

18.06.2026

Новые ИТ-льготы и запреты, ИИ в судах, дроны в медицине, контроль чипов и возвращение Roblox
Блог

Новые ИТ-льготы и запреты, ИИ в судах, дроны в медицине, контроль чипов и возвращение Roblox

11.06.2026

Облако на OpenStack: готовая замена VMware для бизнеса и госсектора
Блог

Облако на OpenStack: готовая замена VMware для бизнеса и госсектора

09.06.2026

ТОП-5 российских систем видеоконференцсвязи в 2026 году: сравнение особенностей и преимуществ
Блог

ТОП-5 российских систем видеоконференцсвязи в 2026 году: сравнение особенностей и преимуществ

04.06.2026

Как выбрать систему инвентаризации, учета и контроля ИТ-инфраструктуры: обзор 5 российских решений
Блог

Как выбрать систему инвентаризации, учета и контроля ИТ-инфраструктуры: обзор 5 российских решений

01.06.2026

Главные ИТ-новости недели 29.05.2026
Блог

Главные ИТ-новости недели 29.05.2026

29.05.2026