Топ причин медленной загрузки сайта

Топ причин медленной загрузки сайта

Станислав Грушевский27 Июля 2021читать 7 м.

Пользователи давно привыкли к скоростному интернету, поэтому любые промедления с загрузкой сайта негативно влияют на конверсию. Есть данные множества исследований, показывающих что если сайт не грузится в течение 3-4 секунд, то его готовы закрыть вплоть до 40% посетителей.

На самом деле причин, из-за которых сайт работает медленно, может быть очень много. Эксперты RU-CENTER, крупнейшего регистратора доменов для бизнеса, выделили из них главные и объяснили, как эти проблемы можно устранить. Эти советы помогут всем, чьи сайта созданы с помощью бэкенд-языков.

Перегруженный хостинг

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

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

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

Проверьте также логи доступа к сайту, посмотрите запросы за период высокого потребления ресурсов. Если дело упирается в возросшую посещаемость вашего веб-ресурса, перейдите на более высокий тарифный план. Само собой, это не решит проблему, если посещаемость на самом деле осталась прежней.

Проблемы JavaScript и CSS 

В процессе загрузки сайта браузер как бы «собирает» страницу из различных элементов её оформления, поэтапно выстраивая макет, который вы в конечном итоге увидите. Это процесс называется рендерингом страницы.

Однако, этот процесс могут существенно тормозить неверно настроенные файлы JavaScript и CSS. Проверить корректность скриптов можно с помощью PageSpeed Insights. Этот сервис проанализирует ваш сайт и покажет, что нужно оптимизировать и какие коррективы помогут ускорить работу сайта.

Вот основные действия, которые, возможно, вам понадобится в таком случае предпринять:

  • Настройте отложенную загрузку JavaScript. Большие файлы должны подгружаться в конце, чтобы дать возможность сначала появиться на странице основному контенту. Для этого настройте вызов внешнего JS-файла перед тегом </body>;
  • Разместите ссылки на CSS-файлы перед ссылками на JS-файлы. Благодаря этому действию страница будет загружаться поэтапно: заголовок, логотип, рубрики, верхние блоки и т. д. В противном случае, все элементы будут загружаться сразу, что замедлит рендеринг;
  • Воспользуйтесь также асинхронной загрузкой скриптов. Она позволит браузеру подгрузить HTML-страницу, даже если он ещё не обработал js и css файлы;
  • Оптимизируйте код, удалив пустые строки, ненужные символы табуляции и другие незадействованные элементы.

Проблемы с внешними источниками контента

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

Внешние ссылки в коде сайта легко проверить. Откройте ваш сайт в браузере Google Chrome и предпримите следующие шаги:

  • нажмите F12;
  • далее откройте вкладку Network;
  • кликните правой кнопкой мыши, чтобы открыть меню;
  • включите столбцы URL и/или Domain;
  • Посмотрите, какой контент хранится на вашем домене, а какой на чужом сервере. Может, что-то можно перенести к себе?

 

Не оптимизированы запросы к базе данных

Скорость загрузки сайтов с большим количество контента – например, интернет-магазинов или новостных порталов – напрямую зависит от скорости выполнения скриптов и запросов к базе данных.

Если база данных не обновляется слишком часто, можно сохранять результаты запроса в файле – он загрузится быстрее, чем выполнено обращение к самой базе данных. Если, конечно, это не очень «тяжёлый» файл.

Для ускорения загрузки сайта следует очистить базу данных от устаревшего и неактуального содержимого. Например, это могут быть неактивные учётные записи. А также следует регулярно обновлять версии PHP. Каждый новый релиз даёт новые возможности увеличения производительности.

Наряду с этими советами, одним из главных методов оптимизации обращения к базе данных было и остаётся грамотное индексирование. Запросы следует составлять так, чтобы при их выполнении по минимуму использовались временные файлы и операции сортировки в файле.

Чем быстрее сервер базы данных выполняет запросы, тем быстрее он получит необходимые данные, сформирует ответ клиенту и освободит память.

Плагины Query Monitor и Debug Bar помогут выявить медленные запросы к базе данных.

Некорректные настройки кеширования

Кеширование позволяет быстрее загружать интернет-страницы. Как это происходит? Кеш – это своего рода буфер, в котором некоторое время хранятся данные, используемые чаще всего – например, JS и CSS файлы, изображения. Когда вы заходите второй раз на тот же самый сайт, браузер не загружает его повторно «с нуля», а обращается к кешу, где уже хранятся некоторые сохранённые элементы веб-страниц.

Способы кеширования бывают разными:

  • С помощью СDN-сервиса. Все необходимые элементы кэшируются на внешнем сервере, что снижает нагрузку на ваш хостинг. Но, если вы решите обратиться для кеширования к CDN-серверу, вы должны убедиться в его стабильной работе. Если с этим есть проблемы, вы только усугубите ситуацию с медленной загрузкой вашего сайта;
  • Кеширование в PHP. Одно из наиболее популярных расширений, которое для этого используются – Opcache. Благодаря этому расширению, ускоряется выполнение скриптов, на языке PHP;
  • Кеширование страниц на диске. Можно кешировать страницы в виде файлов, если все они генерируются скриптами вашего сайта. Тогда браузер пользователя будет загружать их целиком.

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

Не оптимизирован медиаконтент 

Кеширование – хороший способ ускорить загрузку сайта. Ещё один способ заключается в том, чтобы сжать данные. В этом поможет инструмент gzip: он сжимает различные элементы сайта, в том числе и сами JS-файлы и стили. Подключить GZIP можно на самом веб-сервере, через файл .htaccess или в настройках CMS.

Однако не стоит прибегать к этому методу, если файлы и так небольшого объёма. Это, наоборот, может негативно сказаться на скорости загрузки сайта.

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

Картинки можно пересохранить в каком-либо графическом редакторе, задав при этом такие характеристики, которые снизят объём изображения. Для снижения объёма графического файла, в частности, можно воспользоваться утилитой Squash.

Если изображений много и с ними неудобно возиться вручную, подключите к сайту оптимизирующий плагин. Например, те же Robin, Image Optimizer, Optimus, WP Compress, способны сжать изображение в два раза, при этом ни ухудшив его качества.

Аналогичные программы для оптимизации видео - HandBrake и Blazemp. Видео можно также конвертировать в совместимые с HTML5 форматы: MP4 или WebM. Это можно сделать онлайн с помощью ресурса video.online-convert.com.

Перегруженность рекламой 

Всё должно быть меру. В особенности это касается рекламы, обилие которые провоцирует пользователей незамедлительно покидать сайт. А кроме того баннеры, поп-апы, встроенная видео-реклама замедляют подгрузку вашего сайта. На обработку дополнительных HTTP-запросов тратится время.

Так что, этот совет простой – сократите количество рекламы до минимума.

Вредоносные коды

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

Проверить сайт на вирусы и удалить вредоносные коды можно с помощью веб-сканеров. В RU-CENTER есть специальный инструмент — Антивирус для сайта. Он подготовит подробный отчет со списком угроз: вы сможете самостоятельно их изучить и удалить.

Боты 

Боты — это программы, которые могут совершать на вашем сайте определённые действия, в частности вредоносные. Они могут регистрировать учётные записи, захламляя клиентскую базу, копировать и тиражировать ваш уникальный контент, создавать фейковые заказы в интернет-магазинах. Накрутка поведенческих факторов ботами может привести к снижению вашего сайта в поисковой выдаче. И, само собой, боты могут увеличивать нагрузку на сервер и замедлять загрузку вашего сайта.

Как избавиться от ботов?

Проверьте логи доступа к сайту. Часто встречающиеся боты — это ahrefs, mj12, semrush. Их присутствие можно ограничить, закрыв доступ к вашему интернет-ресурсы. Для этого воспользуйтесь на хостинге файлом .htaccess, вставив код:

RewriteCond %{HTTP_USER_AGENT} ahrefs [NC,OR]

RewriteCond %{HTTP_USER_AGENT} semrush [NC,OR]

RewriteCond %{HTTP_USER_AGENT} mj12 [NC]

RewriteRule .* - [F,L]

Перегруженная сеть

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

Или может быть ограничена сама полоса пропускания на том или ином узле.

Диагностику сети проводят с помощью утилит WinMTR или tracert (traceroute). Выявив «сетевую» проблему, вы можете обратиться за поддержкой к вашему хостинг-провайдеру.

Резюме:

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

Даже, если вы не обладаете навыками web-мастера, некоторые проблемы можно устранить самостоятельно, воспользовавшись предложенными нами инструментами. В сложных случаях, например, если вам нужно настроить загрузку данных со сторонних серверов, выбрать плагин для кеширования, оптимизировать код и запросы к базе данных, помочь сможет только специалист.

20 инструментов для повышения конверсии интернет-магазина
Анастасия АргуноваАнастасия Аргуновачитать 7 м.

20 инструментов для повышения конверсии интернет-магазина

5 принципов, которые помогут справедливо оценить дизайн
Ирина ЧуйковаИрина Чуйковачитать 5 м.

5 принципов, которые помогут справедливо оценить дизайн

Гид по сленгу дизайнеров: как ставить задачу на одном языке с повелителями Фотошопа и Иллюстратора
Роман ГорбачёвРоман Горбачёвчитать 8 м.

Гид по сленгу дизайнеров: как ставить задачу на одном языке с повелителями Фотошопа и Иллюстратора

Подписаться на новостную рассылку12 тысяч маркетологов уже подписались!
Следующий
Чего ожидать рынку недвижимости от поколения миллениалов?

Чего ожидать рынку недвижимости от поколения миллениалов?

читать минут
Рекомендуемые

9 способов сократить процент неоформленных заказов

читать минут

Комментарии (0)

  • Перегруженный хостинг
  • Проблемы JavaScript и CSS 
  • Проблемы с внешними источниками контента
  • Не оптимизированы запросы к базе данных
  • Некорректные настройки кеширования
  • Не оптимизирован медиаконтент 
  • Перегруженность рекламой 
  • Вредоносные коды
  • Боты 
  • Перегруженная сеть
  • Резюме: