Вопрос по кешированию wordpress на выделенном сервере?

На выделенном сервере планирую использовать memcached в качестве основного кеширующего элемента для сайтов на wordpress. Вопросы возникли такие:
1. Имеет смысл дополнительно подключать Wp Super Cache на помощь memcached?
2. Если использовать плагин Wp Super Cache, то правильно будет отключить серверное кеширование nginx, чтобы не было двойного кеша?
  • Вопрос задан
  • 50 просмотров
Решения вопроса 1
HeadOnFire
@HeadOnFire
PHP, Laravel & WordPress Evangelist
А как именно вы собираетесь кешировать в memcached, как его использовать? Как стандартный object cache? Fragment cache? Full page cache?

Из всех вариантов кеширования самым быстрым будет Nginx fastcgi_cache, поскольку он будет отдавать статические HTML-страницы прямиком с диска, а то и из памяти – даже не обращаясь к PHP-процессу, не поднимая WordPress и тем более не трогая базу. Но это полная статика, а значит не подойдет если у вас необходимость показывать динамические данные на странице (авторизованные пользователи с личными кабинетами, корзины покупателей и тд).

WP Super Cache по сути делает то же самое, но на уровне плагина - он генерирует статические HTML-страницы, и веб сервер конфигурируется чтобы отдавать их. Это тоже быстро, минусы плюс-минус те же, но как бонус есть возможность определенной настройки в админке и гибкости. Но это в экспертном режиме. Кроме него он может работать в cмешанных режимах где PHP все-таки задействован, не нужно менять конфиги сервера и при этом можно даже кешировать условно динамические страницы. Это огромное преимущество перед nginx fastcgi_cache, если сайту такая функциональность нужна.

Нужно ли иметь одновременно и nginx fastcgi_cache и wp super cache? Нет. Выберите одно из двух. Если сайт может полностью жить в статике - nginx fastcgi_cache настроили и забыли. Если логика статики и динамики чуток посложнее - WP Super Cache.

Независимо от первых 2х вариантов, можно использовать кеширующий бекенд (memcached, redis) для кеширования фрагментов, объектного кеша и любых других данных. Полезно для кеширования .mo файлов переводов, отрендеренных ресурсоемких фрагментов (меню, блоки/виджеты с калькуляциями и тд), стандартного объектного кеша WP и тд. Это второй, внутренний уровень кеширования и важен как раз для динамических запросов, которые не используют full page cache от Nginx / WP Super Cache.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы