Wp Fastest Cache — Плагин кэширования wordpress. Кэширование объектов в опциях WordPress. Minify - уменьшение

  • 18.06.2019

Приветствую Всех читателей. Сегодня хочу поговорить об одном из пунктов оптимизации сайта на WordPress — ускорение загрузки страниц, ускорение работы сайта в целом. Одним из способов для выполнения поставленной задачи является кэширование. Плагинов для создания кэша предостаточно. Два популярных Hyper Cache и WP Super Cache. В этой статье выполнена настройка WordPress Hyper Cache.

Обо всём по порядку.

Работа WordPress, кэширование

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

Как работает Вордпресс? Вся информация, так же как и в Joomla и других CMS, хранится в различных частях шаблона и таблицах базы данных. Для каждого типа инфы своя таблица: записи, комментарии, данные об авторе, сайте и так далее.

Таким образом, при вызове посетителем определенной страницы она генерируется из разных частей используемого : шапка, подвал, сайдбар, контентная часть, затем подгружается содержимое базы данных. Система выполняет множество команд, отправляет необходимое количество запросов к базе данных. И этот процесс повторяется снова и снова при открытии новой страницы каждым пользователем. Так формируется страница в формате HTML. И формируется она на сервере хостинга. При увеличении посещаемости нагрузка увеличивается.

Решить данную проблему призвано кэширование.

Принцип кэширования данных

Что происходит при использовании кэширования? Посетитель переходит на сайт. WordPress выполняет запросы описанные выше и выводит страницу HTML, и одновременно сохраняет её в соответствующей папке сайта. При повторном обращении к этой странице системе нет необходимости проделывать сложную процедуру генерирования, она просто вызывает её из папки сохраненных кэшированых страниц и передаёт пользователю.

Такой приём облегчает работу сервера и ускоряет загрузку сайта в браузере.

Кэш — это своеобразное хранилище данных, с быстрым доступом информации к ним.

База WordPress содержит огромное количество плагинов. Но есть группа так называемых обязательных плагинов, установить которые необходимо на каждом проекте. Такие как плагин сеооптимизации, к примеру, SEObyYoast, плагин для резервного копирования (WordPress Database Backup), плагин кэширования.

Особенности установки Hyper Cache

Плагин устанавливается стандартным способом. Здесь подробная , чтобы освежить в памяти. Есть одно маленькое отличие. Для работы Hyper Cache после активации запросит внести изменения в файл wp-config.php.

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

Корректировать wp-config можно непосредственно на хостинге . Я же для таких целей использую специализированную программу Notpade++.

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

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

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

  • Удалить весь кеш — плагин создаёт папку для хранения кэшированной информации. При нажатии на кнопку удаляются все данные. При глобальных изменениях следует воспользоваться.
  • Очистка архивов и домашней — при нажатии удаляется кэш обозначенные страницы, при этом записи и остальное остаётся сохранённым.
  • Вычисление размера КЕШа — информация о размере папки на сервере.

Настройки плагина состоят из четырех разделов: Главные, Исключения, Мобильный, CDN.

Главные настройки плагина Гипер Кэш

Приступим к полному разбору каждой функции.

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

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

Включить сжатие . Сжатие страниц кеша. Гипер Кэш предупреждает: при некорректном отображении вебстраниц сайта в виде нечитаемых символов не стоит включать опцию, это значит сервер уже использует сжатие.

Enable on-the-fly compression — включить сжатие на «лету». Происходит процесс сжатия вебстраниц отсутствующих в кэше. Активация ускорит загрузку страницы, но и увеличит нагрузку.

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

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

При написании комментария . При добавлении нового комментария обновляется и кэш указанных страниц. Здесь всё логично. Человек оставляет комментарий, и следующий посетитель уже видит этот коммент, а не сохранённую вебстраницу, созданную Hyper Cache.

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

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

HTTPS . Надо активировать при использовании безопасного протокола соединения HTTPS.

Use readfile() . Опция чтения файла. Со слов разработчиков работает лучше, чем фактически используемая функция кэширования file_get_contents ().

Служит ботам со страницами с закончившимся сроком действия . Назначение функции отдавать поисковым роботам все страницы, даже с просроченным кешем. Когда такое может возникнуть? В случае когда срок хранения кеша закончился, а новый пользователь так и не посетил данный пост. Так как ботам надо скармливать актуальную информацию (возможно записи подвергались редактированию), то и нет смысла включать эту функцию.

Сохраняем главные настройки и переходим к следующему разделу.

Настройка исключения плагина Hyper Cache

В плагине есть возможность исключить некоторые страницы сайта от кэширования. Функции включаются по разным причинам.

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

Не кэшировать «стр.404» . Активируем.

Не кешировать ленту комментариев . Создавать кеш комментариев не стоит. Посетители должны видеть оставленные новые комментарии. Моё мнение.

Не кешировать ленту RSS комментариев . То же.

Do not cache pages with URIs — Не кэшировать страницы с URL. Можно задать конкретные страницы не подлежащие кешированию. Прописывайте каждый URL с новой строки.

Do not cache pages with URIs starting with — Не кэшировать страницы с URL, начиная с. Используется для исключения целого раздела из функции кэш. Например, сайт с постоянно обновляющимся разделом новостей, посещаемый форум.

Bypass the cache for readers with cookies — Обход кеша для читателей с помощью файлов cookie.

Bypass the cache for readers with devices (user agents) — Обход кеша для считывателей с помощью устройств. Подразумеваются приложения, осуществляющие доступ к сайтам. Например, браузер.

Bypass the cache for readers which are commenters — Обход кеша для читателей, которые являются комментаторами. При включении опции посетитель, оставивший комментарий тут же увидит его. В случае если они не модерируются администратором. Иначе будет сообщение с таким смыслом: «Ваш комментарий ожидает модерацию». Читателю становится понятно, что коммент дошел до цели, а не затерялся.

Do not cache posts older than — Не кэшируйте сообщения старше, чем. После отметки количества дней статьи переходят в разряд старых и плагин перестаёт кэшировать. Стоит включить в случае когда старые посты перестают лить трафик.

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

Немного отступил от темы поста. Продолжаем настраивать Гипер Кеш.

Настройки плагина Hyper Cache для мобильных устройств

Плагин позволяет выполнить настройки отдельно для мобильного трафика и настольных ПК. Воспользуемся предоставляемой возможностью.

For mobile devices — Для мобильных устройств. В этом пункте три варианта для выбора. При использовании на ресурсе адаптивного дизайна оставляйте настройки: Использовать основной кеш . В этом случае разницы просмотра страницы для пользователя ПК и с мобильного не будет.

Для мобильной версии сайта, когда посетителю показывается отличная от основного шаблона (облегченная) страница установите активным второй вариант: Использовать отдельный кеш. Тогда Hyper Cache будет создавать два разных файла кеша. При этом выборе укажите плагину какой шаблон показывать посетителю зашедшему с мобильного устройства.

Пару слов по поводу адаптивного шаблона. Всё больше людей приобретают и используют для выхода в интернет мобильные гаджеты. Смартфоны и планшеты. Трафик с этих устройств постепенно увеличивается. По статистике Яндекс Метрике на этот сайт процент посетителей с мобильных составляет в среднем 20-25%. В некоторых нишах, например, в сфере услуг, этот вид трафика является основным. Поисковые системы в аккаунтах для вебмастера при отсутствии мобильной версии сайта отмечают как замечание и советуют исправить.

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

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

Мобильные агенты пользователей . По умолчанию указаны user-agent считающиеся как пользователи с мобильного. Есть что добавить, добавляйте.

Настойка CDN HyperCache

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

После всех настроек логично проверить, может «WordPress Hyper Cache не работает?» Делается очень просто. Откройте сайт в другом браузере. Это необходимо сделать потому, что администратору ресурса всегда показывается актуальная информация. Просмотрите исходный код, который открывается сочетанием клавиш CTRL + U. В самом низу должен появится следующий код.

Если его нет, обновите страницу и просмотрите ещё раз.

Настройка WordPress Hyper Cache на этом заканчивается. С этого момента нагрузка на сервер уменьшится и сократится время отклика вебсайта. Кеширование является только одним из пунктов оптимизации сайта. В одной из следующих статей напишу обзор способов оптимизации изображений. Здесь можете почитать как с помощью Photoshop.

Какими плагинами кеширования пользуетесь Вы на данной момент, и думаете ли использовать Hyper Cache если у Вас активирован другой.

Желаю Всем удачи и быстрых сайтов!

Object cache или Кэш объектов в WordPress - это механизм ядра, который позволяет сохранять любые данные в кэш. Такой кэш используется для сохранения данных, которые получаются много раз в процессе кода или для сохранения данных полученных после сложных операций.

Пример объектного кэширования

Рассмотрим пример кэширования SQL запроса.

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

Function myfunc() { return $wpdb->get_results("SELECT ..."); } myfunc(); // SQL запрос myfunc(); // SQL запрос myfunc(); // SQL запрос

Сделаем, чтобы функция работала с объектным кэшем. И теперь только первый вызов функции выполнит SQL запрос, а остальные будут брать данные из кэша.

Function myfunc() { // пробуем получить кэш и вернем его если он есть $cache_key = "my_cache_key"; if($cache = wp_cache_get($cache_key)) return $cache; $value = $wpdb->get_results("SELECT ..."); wp_cache_set($cache_key, $value); // добавим данные в кэш return $value; } myfunc(); // SQL запрос myfunc(); // Кэш myfunc(); // Кэш

Функции объектного кэша

wp_cache_get($key, $group, $force, $found) Получает данные из кэша по указанным ключу и группе. wp_cache_add($key, $data, $group, $expire) Добавляет данные в кэш, если кэша с указанным ключом еще нет. wp_cache_set($key, $data, $group, $expire) Добавляет данные в кэш объектов. Перезапишет кэш, если он существует. wp_cache_replace($key, $data, $group, $expire) Устанавливает/заменяет/обновляет данные указанного кэша, только если кэш уже существует, в противном случает ничего не делает (вернет false). wp_cache_delete($key, $group) Удаляет кэш по указанному ключу и группе. wp_cache_flush() Полностью очищает объектный кэш. Удаляет все элементы объектного кэша. wp_cache_add_global_groups($groups) Добавляет указанную группу объектного кэша в список глобальных групп. Нужно для мультисайта. wp_cache_add_non_persistent_groups($groups) Помечает указанную группу/группы как непостоянный кэш, т.е. который не нужно сохранять для межсессионного использования. wp_suspend_cache_addition($suspend) Временно приостанавливает добавление объектов в объектный кэш.

Где в WordPress используется объектное кэширование?

В WP такое кэширование используется практически везде: в опциях, записях, терминах, у пользователей, метаданных и т.д.

Кэширование объектов в опциях WordPress

Для примера, рассмотрим как работает кэширование объектов в опциях WordPress. Функция get_option() не создает дополнительных запросов в базу данных при множественном вызове, как раз благодаря такому кэшу.

К таким группам относится кэш, который является уникальным для всей сети сайтов.

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

По умолчанию глобальными группами являются:

Users userlogins usermeta user_meta useremail userslugs site-transient site-options blog-lookup blog-details site-details rss global-posts blog-id-cache networks sites themes

В список глобальных групп можно добавить свою группу, см. функцию wp_cache_add_global_groups("my-global-group") .

Непостоянные группы

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

Иногда надо, чтобы кэш не сохранялся на постоянной основе, а работал как и прежде (только во время генерации страницы). Чтобы добиться этого, можно указать группу для создаваемого кэша объектов и пометить эту группу как «Непостоянная». Делается это с помощью функции wp_cache_add_non_persistent_groups("my-group") .

Так при сохранении кэша в группе «my-group», значение будет сохранено только в локальный кэш (в оперативную память) и не будет сохраняться в хранилище кэширующего плагина, например на сервер Memcached.

Обычно к непостоянным группам относятся группы:

Counts plugins themes

Отключение кэша объектов

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

Очень долго я не касался темы кэширование wordpress , так как был уверен, что на моем виртуальном сервере с SDD дисками кэширование не так важно. Именно в этом меня убеждала служба поддержки хостинга. Хотя как убеждала, скорее предостерегала, вот моя переписка:

Я: - Скажите, при такой конфигурации сервера есть ли смысл делать кэширование плагинами на уровне wordpress?

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

И вот недавно я опять задал этот вопрос и получил немного другой ответ:

Я: - Здравствуйте! У меня периодически падает ngnix и база данных, перезапускаю их и все нормально. Происходит это раз в 1-2 сутки. Скажите, поможет ли мне установка плагинов кэширования на уровне сайтов или можно сделать кэширование на уровне сервера?

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

Спрашивается: кому или чему верить? А верить нужно экспериментам. Решил я установить на это блог плагин кэширования, чтобы посмотреть, как это скажется на работе блога.

Какой плагин кэширования вордпресс выбрать?

Я пробовал несколько разных плагинов, но всех больше мне понравился плагин кэширования wordpress W3 Total Cache . Почему именно он? Просто он ОЧЕНЬ функциональный и позволяет не только кэшировать страницы сайта, преобразуя их в html файлы, но и многое другое, например, он работает и как плагин кэширования запросов к базе данных.

Из минусов можно отметить отсутствие русского языка и ввиду этого некоторая сложность установки. Поэтому я решил зафиксировать процесс установки W3 Total Cache на этом сайте и процесс настройки.

Как установить W3 Total Cache?

Для начала идем в админку wordpress в раздел ПЛАГИНЫ - ДОБАВИТЬ НОВЫЙ и в строку поиска вбиваем название плагина - W3 Total Cache и жмем ENTER.

Обратите внимание: плагин скачало почти миллион человек, эта цифра показывает, что этот плагин для кэширования вордпресс на самом деле самый лучший! Устанавливаем.

Сразу после установки получаю предупреждение:


Переводится так: W3 Total Cache об ошибках: Файлы и каталоги не могут быть автоматически созданы, чтобы завершить установку. Пожалуйста, выполнять команды вручную или использовать FTP форму, чтобы W3 Total Cache сделать это автоматически.

Нажимаю Update via FTP, что то там происходит, надпись исчезает и появляется вот такая надпись, перевел:

W3 Total Cache: Настройки по умолчанию используются. Файл конфигурации не может быть прочитан или не существует. Пожалуйста, чтобы создать файл нажмите кнопку.

Нажимаю еще раз и все кажется заработало. Если это так, то у вас должна появиться папка wp-content/cache . Сразу задайте ей и всем файлам в ней права доступа 777, иначе работать не будет. Так же на время нужно такие же права дать файлу.htaccess в корне диска (сделайте лучше перед этим его копию, на всякий случай)

Так же возможно вам придется дать доступ к файлу /wp-config.php или прописать в нем самому опцию:

Define("WP_CACHE", true); // Added by W3 Total Cache

Пройдемся по настройкам, для этого находим настройки плагина в левой колонки админки вордпресс и нажимаем на PERFOMANCER - GENERAL SETTING.

1. Page Cache - кэширование страниц

Это самое главное, ради чего ставился этот плагин. Нужно поставить галочку в Enable (включить), выбрать метод Disk: Basic и нажать кнопку Save all setting (сохранить настройки).


Теперь, когда посетитель открывает страницу сайта, ее копия в html формате сохраняется в папке wp-content/cache/page. Можно так же выбрать метод ENHANCED (повышенная), но не знаю, стоит ли это делать в моем случае. Да и к тому же у меня при использование этого метода выдавало ошибку, хотя файлы при этом кэшировались.

2. Minify - уменьшение

Тут имеется ввиду сокращение и сжатие файлов стилей и скриптов. Я не включаю эту функцию, так как после этого мой сайт реально перекашивает.


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

3. Database Cache - кэширование базы данных

А вот это пункт важный. Но не выбирайте метод Disk: Basic, так как это может привести к сбоям, лучше выбрать метод Alternative PHP Cache. В этом случае запросы к базе данных буду кэшироваться PHP акселератором, у меня он, как я понял, на сервере установлен.


4. Object Cache - кэширование объектов

Это тоже очень важная функция, которую нужно включить, выбрав метод Disk: Basic.


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

5. Browser Cache - включение кэша браузера

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


Но у меня тест Google Page Speed в упор не хочет замечать эту опцию, что я только не делал, и с этим плагином, и без. Скорее всего это происходит потому, что у меня стоит связка ngnix и apache2, первый работает как прокси сервер и видимо этот тест поэтому не работает как нужно. Хотя, может я и ошибаюсь.

6. CDN -

Для чего это нужно? Вы можете использовать посторонние сервера для кэширования ваших данных. Если посетитель находится в Америке, в ваш основной сайт в России, то ему лучше получить основную массу данных с сервера CDN, который находится в его стране или где то рядом. Но я не включаю пока эту опцию. Почему?


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

Вот таким образом я настроил кэширование этого блога. В плагине есть еще некоторые опции, но они не стоят рассмотрения, так как на практике не нужны. Если вам будут интересно, то можете покопаться в настройках. Если не знаете английского (как я), то можете воспользоваться Google Crome, который умеет переводит и админку wordpress.

СОВЕТ ВЕБМАСТЕРУ: Умение зарабатывать в интернете - это только пол дела, вторая половина - это умение ВЫГОДНО обналичивать электронные деньги. Вот список офшорных банковских карт, на которые можно выводить средства и потом снимать с них хрустящие купюры:

1. Payoneer - Самая популярная в мире платежная система для фрилансеров. Выдает карты, находится в США.

2. EpayService - Американская платежная система, очень популярна во многих странах, бесплатно дает карту MasterCard в EVRO для жителей СНГ и Европы.

3. Skrill - Единственная платежная система которая работает с криптовалютами и при этом выпускает бесплатные банковские карты MasterCard.

4. AdvCash - Офшорный банк находится в Белизе, можно открыть счет в долларах, евро, фунтах и рублях.

5. Payeer - Штаб квартира этой платежной системы находится в Грузии, тут так же можно открыть счет в долларах, евро и рублях.


Домен RU - 99 руб
Домен РФ - 99 руб

С егодня я предлагаю вам обсудить такую интересную тему как кэширование в wordpress. Первым делом нужно уточнить что такое кэширование и зачем оно нужно? Каждому блоггеру и вебмастеру справедливо хочется чтобы его блог или сайт работал быстро. Как известно WP не обладает рекордно высокой производительность, поэтому зачастую даже хороший хостинг не способен этого компенсировать. А уж если у вас «тяжелый» контент, да еще и высокая посещаемость, дело может быть вообще беда. В любом случае есть возможность ускорить блог почему бы этого не сделать?

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

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

Как проводилось данное исследование? Для оценки производительности того или иного плагина использовался Apache Benchmark. Данный тест генерирует большое количество запросов, на основании чего формируется отчет о количестве обработанных сервером запросов в секунду и среднем времени передачи данных. Исходные данные: WordPress 2.9.1 на котором установлено несколько популярных плагинов - Akismet, All in SEO Pack и Google XML Sitemap. Количество трафика на тестовом блоге не велико, представлен смешанный контент - текстовый, изображения, электронные таблицы, java-скрипты. Для объективности каждое измерение повторялось несколько раз в сутки.

Я не буду приводить результаты тестирования всех плагинов, которые тестировались авторами Tutorial9, потому что смысл заострять внимание есть только на самых распространенных, ходовых и популярных плагинах. Итак, приступим:

Блог с выключенным кэшированием

Блог без активированных плагинов, показал следующие результаты:

Запросов в секунду - 13,96;
Время на каждый запрос - 716,58 мс;
Скорость передачи данных - 673,98 Кбит/сек

Как видите исходные данные не впечатляют. Давайте посмотрим что и как можно улучшить.

Плагин WP-Cache

Популярный плагин WP-Cache продемонстрировал следующий результат:

Запросов в секунду - 109,59;
Время на каждый запрос - 91,25 мс;
Скорость передачи данных - 5307,00 Кбит/сек

Заметно лучше чем без кэширования. Результат превосходит блог без активированных плагинов в среднем на 685%. Замечу что WP-Cache - давно известный плагин, который исторически пользуется популярностью.

Плагин WP Super Cache

WP Super Cache в настоящее время пожалуй более популярен чем WP-Cache. Это легко объяснимо - WP Super Cache является доработанной версией WP-Cache. Помимо того что он быстрее, он и «умнее», то есть умеет больше чем предшественник. В частности его легче устанавливать и удалять, он умеет чистить за собой «мусор» после деактивации и так далее.

Что же касается скорости, результат получился следующий:

Запросов в секунду - 118,23;
Время на каждый запрос - 84,58 мс;
Скорость передачи данных - 5743,07 Кбит/сек

Результаты тестирования превосходят результаты WP-Cache. WP Super Cache в среднем быстрее блога без активированного кэширования в среднем на 747%. Отмечу еще одну особенность - если в WP Super Cache включена компрессия , он может быть даже медленнее блога без плагинов!

Плагин Hyper Cache

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

Результаты:

Запросов в секунду - 130,75;
Время на каждый запрос - 76,48 мс;
Скорость передачи данных - 6325,36 Кбит/сек

В среднем это лучше на 837% чем блог без плагинов.

Итоги работы плагинов кэширования для wordpress

Я не стал приводить в этой статье всех плагинов, потому что оптимальным выбором является один из рассмотренных выше. Если у вас есть время, желание и знания английского вы с легкостью можете изучить полные результаты исследвания сравнения плагинов wordpress для кэширования.

Лучший результат показал Hyper Cache , к тому же он обеспечивает хороший контроль над процессом. Вполне можно использовать WP-Cache или WP Super Cache. И тот и другой заметно повышают производительность. Кроме того они из когорты «старых добрых», проверенных поколениями, а значит неплохо поддерживаются. Надеюсь, эта статья помогла вам определиться с выбором плагина для кэширования. Дело за установкой!

Что касается меня, то я использую и для своих и для клиентских сайтов платный премиум плагин WP Rocket, ну и конечно серверное кэширование средствами Nginx или LiteSpeed

А какой плагин для кэширования wordpress используете вы и почему?

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

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

Что такое кэш?

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

Именно поэтому кэширование контента вашего сайта так полезно:

— быстро предоставляйте доступ к данным сайта, которые редко меняются

— ускорьте весь процесс загрузки сайта

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

— продвиньтесь в позициях выдачи поисковиков, благодаря более высоким показателям загрузки

— приберегите серверные ресурсы и снизьте кол-во крахов

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

Лучшие плагины для кэширования WordPress

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