Серверное кеширование Wordpress

BasterYC
На сайте с 30.10.2007
Offline
149
2030

Есть сайт на вордпресс с приличной посещаемостью.

Он на 95% закеширован с помощью wp super cache. (оставшиеся 5% - после загрузки страницы аяксом с этого же сервера дергается php файл, который выдает контент из статичного xml).

Остальное - полная статика (плагин складывает кеш в своей папке).

Есть необходимость в динамическом контенте для части пользователей(залогиненных).

Как бы эти 2 потока(кеш для всех и динамика для залогиненых) разделить. Чтобы при большом набеге зарегистрированных не ложился кеш для остальных(сейчас так и происходит в пиковые моменты, поддержка сказала cpu не выдерживает).

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

Сейчас фаствпсовский впс:

1 Core

4 GB DDR4

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

Andreyka
На сайте с 19.02.2005
Offline
822
#1

Кешируйте через nginx. Но если контента много - не уверен, что хорошая идея.

Не стоит плодить сущности без необходимости
BasterYC
На сайте с 30.10.2007
Offline
149
#2
Andreyka:
Кешируйте через nginx. Но если контента много - не уверен, что хорошая идея.

"много" это примерно какой уровень?

сейчас около 12000 фалов в папке кеша(самих страниц на сайте около 3 тыс).

эта цифра может утроиться в ближайшее время.

pupseg
На сайте с 14.05.2010
Offline
347
#3
BasterYC:
"много" это примерно какой уровень?
сейчас около 12000 фалов в папке кеша(самих страниц на сайте около 3 тыс).
эта цифра может утроиться в ближайшее время.

RAM-disk, если хочется улучшить IO. Но тут вопрос возникает в ОС, MySQL и т д.

4GB памяти - не так уж и много.

Качественная помощь в обслуживании серверов. (/ru/forum/661100) Бесплатных консультаций не даю, не помогаю, не обучаю. Минималка от 100$. Как пропатчить KDE-просьба не спрашивать. Есть форумы (http://linux.org.ru) и полезные сайты (http://www.opennet.ru/).
adel92
На сайте с 04.01.2012
Offline
334
#4
pupseg:
RAM-disk, если хочется улучшить IO. Но тут вопрос возникает в ОС, MySQL и т д.
4GB памяти - не так уж и много.

WP Fast Cache - попробуйте, его вдовесок к w3total.

Значительно снижает нагрузку на сервер.

NVMe VDS (https://well-web.net/nvme-vps) с поддержкой 24/7 - от 545 руб.! Безлимитный хостинг (https://well-web.net/ssd-hosting) - от 129 руб.! Домен в подарок! Перенос бесплатно! Заказывайте сейчас, и получите скидку 50%! Заходи! (https://well-web.net/limited-offers)
danforth
На сайте с 18.12.2015
Offline
153
#5

Трафик какой?

В идеале, делать нужно так:

  • Делаем первый запрос по определенном урлу
  • Если нету файла в кеше, то кешируем страницу и кладем на диск, в последующие разы отдаем юзеру страницу
  • На самой странице делаем AJAX запрос к API (может быть даже самописный), самое тяжелое - отдаем через Redis с предварительным прогревом кеша. Если легкое - дергаем с базы.

Я не знаю какая у вас посещаемость.

Сейчас проверил тестовый VPS который я настраивал под себя (блог WP) нагрузочное тестирование с плагином кеширования (это даже не nginx). В итоге 945 запросов в секунду (!) на VPS с одним ядром и одним гигабайтом оперативной памяти и SSD диском, нагрузка в top около 0.7, т.е. в пределах нормы. При желании можно выжать и больше, раза так в два. Если не рассматривать вариант просто добавить мощностей.

Junior Web Developer
M
На сайте с 17.09.2016
Offline
124
#6

в nginx определять (по кукам ?) авторизацию, при наличии куки - кидать на динамику

Если же куки нет - статику nginx'ом отдавать

A
На сайте с 29.04.2012
Offline
52
#7

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

Andreyka
На сайте с 19.02.2005
Offline
822
#8

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

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий