Wp Fastest Cache — Плагин кэширования wordpress. Важность кэширования в wordpress

Очень долго я не касался темы кэширование 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 руб

Плагин – WP Fastest Cache является одним из лучших плагинов для кэширования файлов на сайте wordpress. Плагин достаточно простой и имеет минимум настроек. Особенности и преимущества плагина:

Настройки плагина на Русском языке!

Использует быстрый модуль Mod_rewrite, используется в файле htaccess.

Все файлы кэша удаляются при публикации записи или страницы.

Можно вручную удалять весь кэш.

Можно вручную удалять оптимизированные CSS и JS файлы на странице Параметры.

Функция “Блок кэш” для конкретной записи или страницы. Если вставить на страницу специальный шорткод, то страница не будет кэшироваться.

Можно установить временной период для автоматического обновления кэша.

Включить или отключить кэш для мобильных устройств.

Включение или отключение кэширования для зарегистрированных пользователей.

Уменьшение размера HTML страницы.

Уменьшить размеры CSS файлов.

GZIP сжатие.

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

Объединение CSS файлов, для уменьшения http запросов.

Установить плагин вы сможете прямо из админ-панели wordpress. Перейдите на страницу: Плагины – Добавить новый , введите название плагина в форму поиска, нажмите Enter, установите и активируйте плагин.

После установки и активации плагина, перейдите на страницу: WP Fastest Cache , чтобы настроить плагин. Чтобы включить Русский язык, внизу страницы, в последнем поле, выберите Русский язык и Сохраните настройки .

Настройки

– Кэширование, поставьте галочку, чтобы включить кэширование на вашем сайте.

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

– Мобильные, поставьте галочку, чтобы отключить кэш на мобильных устройствах.

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

– Сжатие HTML, поставьте галочку, чтобы уменьшать размер HTML кода страницы.

– Сжатие CSS, поставьте галочку, чтобы уменьшать размер CSS файлов.

– Объединение CSS, поставьте галочку, чтобы объединять CSS файлы в один, для уменьшения http запросов.

– Объединение JS, поставьте галочку, чтобы объединять JS файлы, для уменьшения http запросов.

– Компрессия Gzip, включение GZIP сжатия файлов. Внимание! перед тем как включать данную функцию, . Если у вас уже включено GZIP сжатие, то галочку ставить НЕ нужно!

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

Сохраните настройки .

Остальные страницы

Очистка кэша, здесь можно – Очистить весь кэш или Очистить весь кэш и сжатые CSS/JS файлы .

Таймаут кэша, здесь можно установить временной период для авто-обновления кэша. Нажмите на кнопку – Add New Rule . В открывшемся окне выберите страницы для кэширования, укажите временной период и нажмите на кнопку – Save .

– Исключения, можно исключить определённые страницы из кэширования.

– CDN, можно подключить функцию CDN для доставки контента с другого сервера. Можно перенести файлы на другой сервер, тем самым вы снимите нагрузку со своего сервера. Платная услуга.

Блок кэш

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

Обновлено: Апрель 17, 2018 автором: Илья Журавлёв

Привет, друзья!

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

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

Зачем нужно кэширование страниц сайта

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

Браузеры понимают только страницы в формате HTML. Если со статичными сайтами всё просто — есть готовая страница, которая отдаётся всем, кто захотел её посмотреть, то с CMS всё сложнее. Сайт на WordPress подключен к базе данных, и каждый раз, когда посетитель обращается к какой-либо странице, система отправляет базе запрос. А что, если сотня пользователей одновременно запросит какую-нибудь страницу? Она ведь каждый раз будет генерироваться заново, что создаст большую (и, что главное, лишнюю) нагрузку на сервер. Значит, пользователи не смогут быстро получить доступ к нужной информации (а то и вовсе хостинг отключит сайт за высокую нагрузку). Кэширование решает эти проблемы.

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

Плагин для кэширования WordPress-блога

Если у вас блог на WordPress, кэширование в нём можно реализовать с помощью плагина. Выбор есть: это могут быть WP Super Cache, W3 Total Cache или Hyper Cache. Последний и будет разобран в статье ввиду своей простоты, практически переведённого на русский язык интерфейса и хороших показателей скорости работы.

Hyper Cache — действительно оптимальный плагин кэширования Вордпресс-блога. Здесь дело больше в эффективности: Hyper Cache показывает лучшие результаты в ускорении сайтов.

Но если всё же рассматривать разные варианты, подбирайте плагин кэширования для WordPress методом проб. Например, у плагина Hyper Cache была выявлена несовместимость с плагином, NoExternalLinks. Если же у вас нет проблем с совместимостью, то выберите плагин, максимально увеличивающий скорость загрузки.

Hyper Cache для WordPress. Установка

Про установку плагинов было написано ни раз, но для новичков повторю еще раз. Есть два способа. Первый:

  • Найти на официальном сайте wordpress.org и скачать плагин Hyper Cache.
  • Зайти в панель управления.
  • Открыть раздел “Плагины”, нажать кнопку “добавить новый”.
  • Нажать “загрузить плагин”.
  • Выбрать скачанный zip-архив.
  • Нажать “Установить”.
  • Активировать плагин.

Второй проще.

Просто зайдите в панель управления в раздел «Плагины», нажмите “Добавить новый” и введите в строку поиска “Hyper Cache”. Затем нажмите на “Установить”, активируйте плагин.

Теперь плагин установлен, и его можно настраивать.

Hyper Cache: как настроить

Перейдите в настройки плагина. Как сообщает плашка вверху, вы должны добавить строчку “define ("WP_CACHE", true);” в свой файл wp-config.php. Эта строка задаст переменной “WP_CACHE” значение “true” — разрешит кэширование.

Добавить строчку можно через визуальный редактор в панели управления вашего . Откройте расположенный в корне сайта wp-config.php и после строки WPLANG добавьте нужный код define("WP_CACHE", true);

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

Плагин частично переведён, но не полностью.

С переведёнными пунктами всё понятно (время кэширования страниц определяет промежуток времени, через который информация на страницах будет обновляться; “включить сжатие” позволяет дополнительно сжимать страницы), но пункты на английском тоже есть. Разобраться с ними сложнее, поэтому тут могут возникнуть вопросы.

Как настроить непереведенные пункты:

  • Пункт “When a post receives a comment” позволяет вам выбрать, будет ли плагин обновлять данные страниц категорий и тегов, результатов поиска и главной страницы, а также количество комментариев в превью статьи. Два варианта - обновлять всё или обновлять только главную страницу (или ничего не обновлять, если галочки сняты с обеих опций).
  • В “When a post is edited” вы можете задать, будут ли вышеуказанные страницы обновляться, если вы отредактировали текст самой записи.

Остальные поля на русский переведены.

В “Исключениях” вы можете выбрать, какие страницы кэшировать не следует. Можно исключать как конкретные, предложенные самим плагином страницы (главная, ошибка 404, лента комментариев), так и собственные — просто укажите URL, и Hyper Cache не будет кэшировать эту страницу.

Если вы показываете мобильным посетителям контент, отличный от компьютерных пользователей, во вкладке “Мобильный” следует выбрать “cache separately”. В противном случае из-за Hyper Cache мобильные пользователи увидят то же, что и компьютерные.

На этом настройка Hyper Cache в WordPress закончена. Посмотрите видео о данном плагине, если хотите получить больше информации:

Заключение

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

Подбирать плагин кэширования в WordPress нужно осторожно. Проверяйте совместимость плагина с вашей версией WordPress: нередко новые версии плагинов не работают со старыми шаблонами WordPress и наоборот, старые аддоны не всегда поддерживают новые версии этого движка. Успехов!

P.S. Как и обещала, расскажу еще немного о путешествии в тайскую провинцию Канчанабури. Это место обрело популярность после выхода американского фильма «Мост через реку Квай», его мы кстати посмотрели, находясь там. Прокатиться на поезде по железной дороге смерти, проходящей вдоль реки, было настоящим удовольствием, такие потрясающие виды там открываются.

А после я решила сплавиться по течению реки Квай, на глазах удивленных туристов (почему-то никому и в голову не приходило купаться в реке). Маленькая белая звездочка на воде — это я:)

Желаю вам не плыть по течению, а брать судьбу в свои руки и заниматься любимым делом, например, ведением блога:) Пока!

(Последнее обновление: 18.02.2019)

Привет, дорогие мои читатели! У вас такое бывает? Заходишь на какой нибудь сайт и ждёшь несколько секунд, пока страница. Я в таком случае тут же сразу закрываю страницу в браузере, меня это просто бесит. Вот так, веб - ресурс теряет драгоценных посетителей. Вот, чтобы с моим или с вашим сайтом такого не случилось, я подготовил подборку популярных бесплатных плагинов которые помогут нам выдерживать нагрузки при увеличение посещаемости блога и скорость загрузки страниц. Эти плагины для кэширования WordPress и оптимизации скорости загрузки сайта .

Плагины для кэширования WordPress

Сегодняшний пост пишу прежде всего для себя, чтобы потом не рыскать по интернету в поисках нужной информации, а была уже под рукой. Надеюсь и вам пригодится. Обзор плагинов будут без инструкций по настройке, так как, я ещё не устанавливал их. NEW : Ссылка по настройке популярного модуля WP Super Cache будет ниже.

Друзья, если сайт стал тормозить, используйте кэширование . Эта тема часто поднимается в рунете и по данному поводу написано большое количество статей. В общих чертах, все сводится к следующему: при использовании CMS WordPress кэширование жизненно необходимо. Плюс к этому, поисковики не любят медленные сайты. А нам это надо?

Плагины для кэширования WordPress

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

Плагин WP Super Cache


Бесплатный плагин WP Super Cache

Плагин кэширования WP Super Cache наиболее популярен у пользователей , установили его уже более 6 401 830 раз, так как, модуль активно поддерживается разработчиками (Automattic). Принцип работы модуля заключается в создании вместо динамических php страниц WordPress, статических HTML станиц, которые, собственно и показываются посетителям, минуя базу данных. По настройкам WP Super Cache не так сложен, как следующий плагин кэширования W3 Total Cache, но по функционально очень хорош.

Читайте инструкцию по установке и настройке WP Super Cache на .


W3 Total Cache делает сайт реально быстрым, один из лучших плагинов для оптимизации WordPress. Данный плагин используют солидные и известные сайты mashable.com, smashingmagazine.com, yoast.com. Использование плагина W3 Total Cache на вашем веб - ресурсе повышает удобство для ваших посетителей за счет повышения производительности сервера, кэширования каждого элемента, сокращения времени загрузки страниц, выдавая пользователю нужный ему материал буквально молниеносно.

Плагин LiteSpeed Cache


Плагин для WordPress LiteSpeed Cache

LiteSpeed ​​Cache для WordPress (LSCWP) - это универсальный плагин для ускорения работы сайта, включающий эксклюзивный кэш на уровне сервера и набор функций оптимизации Вордпресс.


Тест плагинов для кэширования вордпресс

LSCWP поддерживает WordPress Multisite и совместим с большинством популярных плагинов, включая WooCommerce, bbPress и .

Основные характеристики плагина

  • Кэш объекта (Memcached / LSMCD / Redis);
  • Оптимизация изображения (Lossless / Lossy);
  • Сократите CSS, JavaScript и HTML;
  • Минимизировать встроенный CSS / JS;
  • Поддержка нескольких CDN;
  • Кэш браузера;
  • Очистить базу данных и оптимизатор;
  • Оптимизация оценки PageSpeed;
  • OPcode Cache;
  • HTTP / 2 Push для CSS / JS (на веб-серверах, которые его поддерживают);
  • DNS Prefetch;
  • Cloudflare API;
  • Поддержка одного сайта и нескольких сайтов (сети);
  • Импорт / Экспорт настроек;
  • Базовый / Расширенный вид настроек;
  • Привлекательный, понятный интерфейс;
  • Поддержка формата WebP.

Подавляющее большинство плагинов и тем/шаблонов совместимы с LSCache.

Плагин Hyper Cache


Плагин Hyper Cache

Настройки плагина:

Настройки плагина Hyper Cache

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

Модуль предназначен прежде всего для веб - мастеров, у которых сайты, блоги на хостинге с малой производительностью. Hyper Cache является гибким и простым в настройке системы кэширования для WordPress. Hyper Cache - это чисто PHP, он работает с любым блогом : никаких сложных настроек не требуется.

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

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

P.S : Когда вы производите какие - то настройки на сайте связанные с изменением дизайна: добавляете или убираете виджеты, социальные кнопки или другие действия, то нужно воспользоваться кнопками очистки кэша, расположенными вверху в настройках предоставленных плагинах на самом видном месте.

Кэширование данных в WordPress позволяет ускорить работу вашего сайта и существенно снизить нагрузку на ваш сервер. В ядре существует три основных вида кэширования — кэширование страниц, кэширование объектов и транзитное кэширование. В этой статье мы коротко расскажем о всех трёх видах, а так же рассмотрим некоторые популярные плагины для кэширования в WordPress.

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

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

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

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

Кэширование в WordPress

В WordPress существует три основных типа кэширования:

  • Кэширование страниц — позволяет сохранять страницы целиком в кэш, и выдавать их из кэша при последующих запросах
  • Кэширование объектов — позволяет кэшировать данные произвольного типа
  • Транзитное кэширование — очень похоже на кэширование объектов, позволяет сохранять данные на определённый промежуток времени

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

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

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

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

При изменении содержания записи или странцы, кэш страницы сбрасывается, и при последующем запросе кэшируется уже новая страница с обновлёнными данными.

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

Плагин WP Super Cache

WP Super Cache — самый популярный плагин для кэширования страниц в WordPress. Он позволяет создавать и выдавать статические HTML файлы для ваших страниц, а при определённой конфигурации, вы можете настрить выдачу этих страниц напрямую вашим веб-сервером (Apache или nginx), минуя при этом обработку PHP файлов в целом.

Новые версии плагина WP Super Cache имеют некотоыре дополнительные функции, например настройку CDN, поддержку мобильной версии сайта и прочее, но основая суть данного плагина — кэширование страниц.

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

Плагин W3 Total Cache более молодой, чем WP Super Cache, но не уступает ему по функционалу. Он очень быстро набирает популярность, и на сегодняшний день насчитывает более 2 миллионов скачиваний из директории WordPress.org.

W3 Total Cache позволяет хранить закэшированные страницы как на жёстком диске, так и в памяти. Он не сохраняет структуру кэша, как делает это WP Super Cache, поэтому настроить выдачу без использования PHP невозможно, но в отличии от WP Super Cache использование внешнего хранилища позволяет легко работать в многосерверной архитектуре.

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

На момент написания данной статьи, плагин Batcache скачали всего около десяти тысяч раз из директории WordPress.org, но в данном случае это не является показателем его эффективности. По производительности он не уступает ни WP Super Cache, ни W3 Total Cache.

У плагина Batcache функция всего одна — кэширование страниц, но делает он это безупречно. Batcache использует внешнее кэширование объектов для хранения данных, что позволяет легко его исопльзовать в многосерверной архитектуре. Этот плагин используется в крупной сети WordPress.com, с более 40 млн сайтов, более 2000 серверов и более 10 млрд просмотренных страниц каждый месяц.

Какой из плагинов кэширования страниц выбрать вам зависит от размера вашего сайта, от возможностей вашего и от вашего опыта работы с WordPress. Если вы не используете плагинов кэширования страниц на данный момент, мы всегда советуем начать с WP Super Cache. Если вам важно иметь больше возможностией и более тонкую конфигурацию кэширования, попробуйте W3 Total Cache. Если вы неплохо разбираетесь в программировании и серверном администрировании, и готовы пожертвовать графическим интерфейсом при настройке — попробуйте Batcache.

Кэширование объектов в WordPress

Объектное кэширование (object cache) реализовано в самом ядре WordPress. Этот механизм позволяет хранить объекты произвольного типа в памяти и полезен в основном разработчикам тем и плагинов для WordPress.

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

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

Кэширование объектов в WordPress производится с помощью ряда внутренних функций, в том числе: wp_cache_add , wp_cache_set , wp_cache_get .

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

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

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

Тем не менее, постоянное кэширование объектов (или внешнее кэшированое) в WordPress легко реализуется с помощью сторонних плагинов, например Memcached Object Cache или APC Object Cache . Оба плагина позволяют использовать оперативную память сервера для хранения объектов WordPress, при этом объекты не пропадают при окончании запроса. Такой подход существенно снижает нагрузку на базу данных MySQL.

Стоит так же отметить, что при включённом кэшировании страниц, до работы с сохранёнными объектами чаще всего время так и не доходит, поскольку страница целиком выдаётся из кэша. Это не является поводом для отключения кэширования объектов, особенно при работе с пользователями которые выполнили вход, а некоторые плагины (например Batcache) вообще используют кэширование объектов для хранения страниц.

Транзитное кэширование в WordPress

Для пользователей данный метод кэширования совершенно прозрачен. Транзитное кэширование (transient cache) позволяет разработчикам сохранять данные на определённый промежуток времени. Этот метод реализован в WordPress с помощью функций get_transient , set_transient и delete_transient .

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

Подобное кэширование так же используется в ядре при работе с RSS лентами, и запросами на обновление тем, плагинов и ядра WordPress.

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

Кэширование объектов или транзитное кэширование?

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

При использовании плагина для постоянного кэширования объектов, все три метода будут пользоваться этим плагином.

Заключение

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

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

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

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

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

02.07.2013 05.11.2013

Сооснователь журнала WP Magazine и первой конференции WordCamp в России. Разработчик в компании Automattic , принимает активное участие в развитии ядра WordPress. Любимый язык программирования: Python.




Top