Способы ускорения сайтов на WordPress

Движок WordPress, как и любая другая система управления сайтом, создает определенную нагрузку на сервер, на котором он работает. Если коротко, то скорость работы сайта опосредовано влияет на его доходность. Prostoweb рассмотрит, какие есть возможности оптимизации быстродействия работы сайта на WordPress.





Использование профайлера для оптимизации плагинов

Сайт на WordPress не может обойтись без плагинов, т.к. в этом состоит архитектурное решение разработчиков данной CMS. А любой плагин использует процессорное время сервера во время своего выполнения. При изучении нагрузки, которую создают плагины, незаменимым инструментом будет системное расширение P3 (Plugin Performance Profiler). Подробно о работе с ним можно почитать по ссылке в дополнительных материалах.

Здесь же отметм, что не все плагины одинаково нужны и полезны. Список обязательных плагинов уже рассматривался в другой статье. Если без какого-то плагина можно обойтись или ценность выполняемой им функции невысока, лучше его отключить или вообще удалить. Это положительно скажется на скорости работы блога. Определить для себя привлекательность плагина по соотношению польза/создаваемая нагрузка как раз можно с помощью Plugin Performance Profiler. У каждого блога свой набор плагинов и этот они по-разному взаимодействует между собой, поэтому однозначного совета, что отключить, а что оставить дать не получится. Здесь решение принимается индивидуально.

Кеширование страниц сайта

В продолжение серверной оптимизации, а ведь отключение плагинов – это как раз аспект оптимизации работы веб-сервера, рассмотрим кеширование. Кеширование страниц сайта позволяет посетителю быстрее получить от сервера контент страницы, т.к. она не создается на лету, а отдается из специального хранилища на сервере. Для реализации кеширования в WordPress разработаны сотни плагинов. Наиболее популярны WP Super Cache и W3 Total Cache.

W3 Total Cache является поистине швейцарским ножом для оптимизации сайта, т.к. позволяет выполнять работу на всех уровнях работы сайта:

  • серверная оптимизация: кеширование результатов выполнения запросов к базе данных, кеширование RSS-потоков и поисковых запросов в памяти и на диске, поддержка ускорителей выполнения кода APC, eAccelerator, XCache, WinCache, использование API для кеширования объектов WordPress;
  • клиентская оптимизация: уменьшение размера, склейка и неблокирующее размещение стилей CSS и сценариев JavaScript, управление заголовками сервера для кеширования контента в браузере пользователя;
  • поддержка CDN (content Delivery Network) – средства для более быстрой доставки контента посетителю, когда пользователь получает данные не от одного конкретного сервера, на котором расположен сайт, а от географически ближайшего в текущий момент узла сети. Такие сети обычно состоят из десятков узлов по всем миру;
  • поддержка интерфейса командной строки для управления кешем;
  • поддержка кеширования отдельно для мобильных устройств.

Социальные кнопки

Кнопки социальных сетей сильно замедляют загрузку страницы сайта, но отказаться от них по рядку причин не представляется возможным. Поэтому  с точки зрения нагрузки социальные кнопки предпочтительнее добавлять не плагином, а непосредственно в файлы темы одним оптимизированным фрагментом кода. Для генерации кода этих кнопок есть несколько сервисов. Например, share42.com создает код, который нужно разместить на своем сервере и сделать необходимые вызовы в файлах темы. Это решение наиболее быстрое. Частичной оптимизацией можно считать загрузку социальных кнопок только из одного источника, например, такой сервис предоставляет Яндекс. В качестве альтернативы, если есть непреодолимое  желание использовать именно плагин для простоты установки и гибкости настройки кнопок, посмотрите на WPSocialite.

Оптимизация базы данных

Особенность функционирования современных реляционных систем управления базами данных (РСУБД) такова, что после месяцев работы над своим блогом, когда создаются, удаляются, редактируются его категории, метки и публикации в таблицах накапливаются лишние данные, а индексы неоправданно разрастаются. Они уже не нужны для работы сайта, но все еще занимают место на диске, увеличивают размер базы данных и замедляют ее работу. Поэтому базу данных сайта можно и нужно периодически обслуживать для выявления и исправления ошибок и оптимизации ее структуры. В этом помогут специализированные инструменты. Например, плагины WP-Optimize или DB - Optimize. Отличительная особенность этих расширений состоит в том, что можно запланировать периодическую оптимизацию базы без своего участия. Кроме того, WP-Optimize позволяет:

  • удалить автоматически создаваемые WordPress так называемые pingback и trackback – комментарии с обратными ссылками на другие сайты;
  • очистить корзину от удаленных комментариев и публикаций;
  • удалить автоматически создаваемые ревизии (предыдущие версии) публикаций с возможностью настройки времени их сохранения;
  • удалить черновики публикаций, которые также создаются автоматически.

Ниже приведен пример использования этого плагина для обслуживания базы данных блога. База время от времени оптимизировалась  с помощью SQL-запросов, поэтому результат операции пока не впечатляет – всего около 0,6% от первоначального объема.

А это прогноз оптимизации после удаления 10485 ревизий записей. Выигрыш в месте на диске около 75% впечатляет. Это сокращение размера базы в 4 раза! Хочу заметить, что ревизии еще ни разу не удалялись с момента запуска сайта 3 года назад.

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

В чем опасность высокой нагрузки при работе сайта

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

Дополнительные материалы

  1. Подробное описание работы с плагином P3 (Plugin Performance Profiler) 
  2. Подробная инструкция, как поставить социальные кнопки с помощью сервиса Share 42 
  3. Технические детали и различия между механизмами trackback и pingback
  4. Советы по оптимизации WordPress 
  5. Необходимые плагины для ускорения сайта: кеширование, оптимизация базы данных и запросов к ней, CSS-файлов 




Опубликовано на сайте: 13.11.2013

Автор: Евгений Свирский

Источник: http://www.prostoweb.com.ua/


Нужны деньги до зарплаты?

более 30 сервисов

Кредиты онлайн на карту за 15 минут

от 0,01%

ставка

до 180 дней

макс срок

до 20 000 грн.

макс сумма




Забавное видео

2-х летний малыш любит бросать. Смотрите, что получилось, когда родители купили ему баскетбольное кольцо!