Почему время ответа сервера превышает положенные 3 секунды и как с этим бороться?

Почему время ответа сервера превышает положенные 3 секунды и как с этим бороться?

Если временной промежуток между отправкой запроса поискового робота к страницам ресурса и получением ответа больше 3 секунд (то есть 300 миллисекунд), ответ сервера считается долгим. Эта ошибка, согласно классификации Яндекс.Вебмастера, относится к критичным. Чем она чревата? Почему возникает? И как её устранить? Ответы на эти вопросы ищите в нашей статье.

Неприятные последствия

В Яндекс Справке критичные ошибки, выявленные при диагностике сайта в Вебмастере, описываются как те, что «могут вести к исключению отдельных страниц или всего сайта из результатов поиска». В эту группу, наравне с долгим ответом сервера, также попали некорректная настройка SSL-сертификата и страницы-дубли с GET-параметрами.

Когда говорят о времени ожидания ответа сервера, используют аббревиатуру TTFB, что расшифровывается как time-to-first-bite (время до получения первого байта). Иными словами, тот промежуток времени, за который происходит первоначальное соединение между браузером и сайтом. Чем этот промежуток меньше, тем лучше. В плюсе остаются все: и сервер, и пользователь.

  • Посетитель сайта оперативно получает нужную ему информацию. Может быстро приступить к её изучению.
  • Ему не приходится тратить время, ожидая, пока отобразится искомый контент. В среднем, если время ответа сервера превышает 3-4 секунды, пользователь покидает сайт и уходит на другой.
  • Отзывчивый сайт с хорошим показателем TTFB получает потенциального клиента, а не возросшее количество отказов.
  • Поисковые системы при ранжировании сайтов учитывают такой параметр, как время загрузки, отдавая предпочтение более «быстрым» ресурсам. Распространено мнение, что они занимают более высокие позиции в выдаче.
  • Оптимизация сервера и повышение скорости его работы позволяют снять часть нагрузки с «железа».

TTFB в идеале должен находиться в пределах 300 миллисекунд (некоторые допускают 400 миллисекунд). Если ответ сервера возникает раньше, здорово! Например, вот такие показатели демонстрирует сайт Студии ЯЛ.

Статья 1 картинка 1

Как определить, долгий ли ответ сервера у вашего сайта?

Один из способов мы вам уже показали – воспользоваться Яндекс.Вебмастером. А точнее инструментом, который так и называется «Проверка ответа сервера». При этом даже необязательно регистрироваться. Достаточно добавить ссылку на анализируемый сайт и в поле «Робот» выбрать робота, который вас интересует. Теперь жмём «Проверить» и через несколько секунд изучаем результат.

Статья 1 картинка 2

Если хотите более расширенный отчёт и более объективную информацию, используйте Яндекс.Метрику. При оценке учитываются месторасположения посетителей, а также особенности устройств, через которые они заходят на сайт.

Ищите нужную информацию следующим образом:

  1. Заходим на Яндекс.Метрику, вводим в строку URL сайта;
  2. Открываем графу «Отчёты», затем «Стандартные отчёты», «Мониторинг», «Время загрузки станиц».
  3. Уточняем промежуток времени, который вас интересует, и удобный вид графика.
  4. Спускаемся ниже, смотрим данные по разным параметрам, в том числе и «Ответ сервера».

Статья 1 картинка 3

Статья 1 картинка 4

Узнать, не превышает ли время ответа сервера 3 секунды, можно и через Google Analytics. Система имеет довольно сложный интефейс, поэтому отыскать требующийся раздел проще всего через поисковую строку. Забейте слова «скорость» или «speed». Дальше выбирайте отчёт «Скорость сайта» и подраздел «Обзор».

Статья 1 картинка 5

Достаточно простым и удобным считается сервис Bitcatcha, показывающий время ответа сервера в разных уголках мира. Что приятно, он бесплатный и им можно пользоваться без регистрации. Для начала работы нужно лишь вбить в специальную строку ссылку на сайт. Вот, например, какие данные сервис собрал по сайту Студии ЯЛ.

Статья 1 картинка 6

Следующий способ – прописывание в футере скрипта для проверки времени ответа. Выглядит это так:

<!--noindex-->

<center><?php

print get_num_queries(). 'количество запросов к базе данных'.

timer_stop(0, 6). 'время, ушедшее на генерацию страницы’;

?></center>

<!--/noindex-->

Если помимо долгого ответа сервера вы обеспокоены медленной загрузки страниц сайта, выясните ее скорость при помощи таких сервисов, как Google PageSpeed Insights, Pingdom Tools, Gmetrix и Free Website Speed Test. Подробнее об их преимуществах и недостатках рассказали в обзоре популярных сервисов-помощников.

Почему возникает такая проблема, как долгий ответ сервера?

Увеличение времени ответа сервера может быть спровоцировано целым рядом факторов. Перечислим самые распространённые:

Пренебрежение модулями кэширования

Некоторые веб-специалисты грешат тем, что путают явления кэширования исполняемого кода с кэшированием других элементов. Применяют не те инструменты (если вообще применяют), из-за чего и страдают показатели скорости ответа сервиса.

Неправильная настройка базы данных

Около половины всех задержек при работе сайта возникают по причине существования проблемных индексов и некорректной структуры запросов в базе данных. Также нежелательные последствия провоцирует отсутствие кэширования популярных результатов.

Надо следить за тем, чтобы файл базы данных не был перегружен и «набит» лишней информацией. Это может привести к тому, что время ответа сервера будет превышать положенные 3 секунды.

«Перемудрённая» логика обработки данных

Сложный, запутанный код не будет работать оперативно. Даже если база данных выстроена хорошо, задержки всё-таки возможны. И причина тому – слишком загруженные скрипты, вынужденные выполнять избыточные операции. Решение этой проблемы заключается в максимальном упрощении кода.

Зависимость от сторонних сервисов, на которые полагается сайт

Запрос данных для вашего ресурса осуществляется со стороннего сервиса? Тогда есть риск, что, когда сервис будет находиться под нагрузкой, это тут же не лучшим образом отразится и на производительности вашего сайта. А представьте, что будет, если сервис вовсе выйдет из строя… Поэтому от зависимостей нужно по возможности избавляться.

Некорректно выбранный тип сервера

Частотная ошибка – использование сервера Apache, а не Nginx. Дело в том, что Apache не способен работать с большим массивом запросов – это не подразумевает его архитектура. Как следствие, даже при передаче статических файлов могут быть заметны существенные задержки ответа сервера.

Слабый хостинг

Возможно, всему виной плохой хостинг. Тогда стоит задуматься о том, чтобы как можно скорее перевести сайт к другому провайдеру. Но для начала достаточно и пары дней – обычно провайдеры предлагают такой тестовый период. Если ситуация начала меняться в лучшую сторону, делаем вывод, что проблема была именно в хостинге.

Особенности CMS

Некоторые CMS при установке на них «тяжелых» шаблонов или «кривых» плагинов провоцируют уменьшение производительности сайта. Связано это с тем, что дополнения оттягивают на себя ресурсы, требующиеся для нормального функционирования сайта. В итоге возрастает время загрузки страниц.

Как «побороть» долгий ответ сервера?

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

  1. Для начала проверьте, может, увеличение времени ответа сервиса вызывали «кривые» плагины, которые используются в CMS. Оцените корректность работы дополнений. Проведите тест: отключите плагины, понаблюдайте, как изменилась скорость работы сайта. Если разница заметная, то поочередно подключайте дополнения, выявляя таким образом «слабые звенья». Определив проблемный плагин, избавьтесь от него.
  2. Иногда уменьшить время ответа сервера удаётся с помощью смены шаблона. Чтобы выяснить, поможет ли этот шаг, также проводим эксперимент. Меняем нынешний шаблон на другой, вставляем туда свой код, переносим нужные для работы проекта данные. Оцениваем изменения. Скорость загрузки сайта выросла? Тогда проблема действительно была в шаблоне, а значит, он реально требовал замены.
  3. Скорость загрузки сайта может страдать из-за атаковавших сервер вирусов. Для их выявления используют онлайн-сервисы или скрипты, прописываемые в коде.
  4. Полезный лайфхак: перенесите тяжёлые скрипты в нижнюю часть страницы. Благодаря этому контент будет прогружаться быстрее, а значит, раньше появляться перед пользователем сайта. Этого же эффекта можно добиться, применяя инструменты, которые позволяют задать удобный нам порядок запуска скриптов.
  5. Также можно уменьшить время ответа сервера, установив плагин для сжатия данных.
  6. Мы уже упоминали ситуации, когда требуется произвести смену хостинга. Заметили, что все проекты, размещаемые на «железе» вашего провайдера, подтормаживают? Меняйте провайдера или местонахождение дата-центра, на котором располагается контент вашего веб-ресурса.
  7. Ну и как обойтись без кэширования страниц? Включить эту функцию можно в настройках CMS или в ручном режиме в файле .htacess.

И в завершении

Определение времени ответа сервера обязательно выполняется при запуске кампании по SEO-продвижению, улучшению юзабилити сайта, повышению конверсии. Также без этого шага немыслимы работы по повышению скорости ресурса. TTFB нужно проверять на каждом типе страниц – от карточек товаров до разделов и категорий. И этот процесс, и оптимизация времени ответа сервера подразумевают применение определённых знаний и навыков. Без помощи высококлассных специалистов тут не обойтись.

Если вы хотите, чтобы над вашим проектом работали профессионалы, обратитесь в Студию ЯЛ. Мы оперативно выявим, почему время ответа сервера у вашего сайта превышает нормативные 3 секунды, и предложим оптимальный способ устранения проблемы. Оставить заявку на услуги Студии ЯЛ или задать интересующие вопросы можно по телефону 8(800) 775-23-01.

Ливерко
Владимир Ливерко
Руководитель отдела проектов

 Другие материалы:

Оцените статью:
Комментарии
Оставьте свой комментарий