Как ускорить отображение в Google Рекламе сайта, построенного на ReactJs? - PullRequest
1 голос
/ 09 мая 2020

Сайт представляет собой SPA-сайт, созданный на основе JS с Next. js генератором.

Используя Chrome отчеты об аудите, в разделе «Объявления издателя» отображается эта проблема:

Avoid bottleneck requests 4.4 s spent blocked on requests

для сторонних ресурсов:

- …js/adsbygoogle.js(pagead2.googlesyndication.com) 1,8535 ms
- …r20190131/show_ads_impl_fy2019.js(pagead2.googlesyndication.com) 1.502 ms
- …chunks/...(mysite.com) 1.200 ms

Я уже использую подсказку о предварительном подключении внутри заголовков, используя этот тег ссылки:

 <link rel="preconnect" href="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js" as="script"/>

preload Намекнуть на более или менее тот же эффект, что и preconnect, насколько я могу измерить. Мне все еще нужно загрузить скрипт с тегом скрипта, вот так, иначе добавления не будут отображаться:

<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js">

Я предполагаю, что огромная задержка связана с тем, что теги Ad отображаются с помощью javascript, поэтому некоторые ресурсы из Google может быть загружен только после, но именно так создаются сайты, сгенерированные stati c, поэтому не могу это изменить.

Как я могу улучшить производительность Google Ads для сайта, построенного на ReactJS ?

Примечание: я использую компонент react-adsense.

Update : я использую stati c генерацию Next. js stati c builder , поэтому объявления Google должны видеть обычную страницу веб-сайта.

Обновление 2 : отключив javascript, я могу видеть html в том виде, в каком он отображается с сервера. На странице рендеринга есть все видимые элементы. Рекламные ресурсы загружаются прямо вверху, как рекомендуется. Я также добавил подсказку о предварительной загрузке. Вот соответствующая часть заголовков страниц:

<html>
<head>
<link rel="preload" href="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js" as="script"><link rel="preload" href="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js" as="script">
<script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
...

Не могу понять, что вызывает bottle шею. Используя вкладку сети, я вижу, что Adsbygoogle. js начинает загружаться менее чем за 100 секунд и завершает sh загружается намного раньше, чем через 200 мс.

Тест на моем старом iphone проходит быстро.

...