INTEGRITY Документация

Speed Brain

Speed Brain представляет собой инструмент для повышения производительности веб-страниц за счёт предзагрузки наиболее вероятного следующего перехода.


Доступность

Free Pro Business Enterprise
Доступность Включено по умолчанию Да Да Да

Требования

Speed Brain работает при соблюдении следующих условий:

Что такое Speed Brain?

Главная цель Speed Brain состоит в том, чтобы попытаться загрузить страницу в браузер до того, как пользователь на неё перейдёт.

Cloudflare использует Speculation Rules API ↗ , чтобы повысить производительность веб-страниц: браузеру предлагается заранее загружать вероятные последующие переходы. Speed Brain не ускоряет загрузку первой страницы сайта, которую посещает пользователь, но может ускорить загрузку последующих страниц в рамках того же сайта.

Предзагружая страницы, переход на которые браузер считает вероятным, Speed Brain может улучшать такие ключевые показатели, как Largest Content Paint ↗ (LCP), Время до первого байта ↗ (TTFB) и общее время загрузки страницы.

Как работает Speed Brain

Когда функция Speed Brain от Cloudflare включена, HTTP-заголовок с именем Speculation-Rules добавляется к ответам веб-страниц. Значение этого заголовка представляет собой URL, на котором размещена готовая конфигурация Speculation-Rules. Эта конфигурация указывает браузеру рассматривать предварительную загрузку будущих переходов с conservative eagerness ↗.

Конфигурация выглядит следующим образом:

{
	"prefetch": [
		{
			"source": "document",
			"where": {
				"and": [{ "href_matches": "/*", "relative_to": "document" }]
			},
			"eagerness": "conservative"
		}
	]
}

Эта настройка указывает браузеру инициировать запросы prefetch для последующих переходов. Такие запросы prefetch будут включать sec-purpose: prefetch HTTP-заголовок запроса. Неуспешные предзагрузки будут получать ответ с 503 код статуса. Успешные предзагрузки (prefetch) вернут 200 код состояния.

Проверка Speed Brain

Чтобы проверить, что Speed Brain включен, убедитесь, что HTTP-заголовки ответа для ваших веб-страниц содержат Speculation-Rules заголовок. Однако обратите внимание, что во время бета-фазы Speed Brain это поведение может быть не на 100% стабильным.

Чтобы проверить, отправляет ли ваш браузер запросы prefetch, откройте Сеть tab in Chrome DevTools. Then, mouse-down on a link on a webpage with Speed Brain enabled. This action should initiate a prefetch request, which will be  visible in the Сеть вкладке. Однако обратите внимание, что есть несколько причин, по которым браузер может не инициировать предзагрузку (prefetch). См. Руководство Chrome Limits ↗ для получения дополнительных сведений. Общую информацию об отладке Speculation-Rules можно найти в Руководство Chrome Speculation Debugging ↗.

Интеграция RUM

Speed Brain интегрируется с Web Analytics и Real User Measurements (RUM). Благодаря этой интеграции вы можете увидеть, как Speed Brain влияет на производительность сайта, прямо в интерфейсе Web Analytics в панели управления Cloudflare.

Speed Brain можно использовать и без включённого RUM, но тогда вы не увидите, как эта функция влияет на производительность ваших страниц. Подробнее о настройке RUM читайте в Web Analytics & RUM документация.

Включение и отключение Speed Brain

Speed Brain доступен в Speed вкладке панели управления, а также в API.

Чтобы включить или отключить Speed Brain в дашборде:

  1. На панели управления Cloudflare перейдите к разделу Speed > Настройки страницу.

    Перейдите в Настройки ↗
  2. Перейдите в Оптимизация контента.

  3. Переключить Speed Brain к Включено или Off.

Используйте следующее PATCH запрос, чтобы включить Speed Brain:

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
  • Zone Settings Write
Изменение настройки Cloudflare Speed Brain
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/settings/speed_brain" \
	--request PATCH \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"value": "on"
	}'

Чтобы отключить Speed Brain, установите value: к "off".

Speed Brain также можно настроить через Terraform. Подробнее об этом читайте в cloudflare_zone_settings_override ресурс в Документация Terraform ↗.

Важные замечания