Коротка відповідь: Встановіть Redis (sudo apt install redis-server), обмежте йому пам'ять (maxmemory 256mb, політика allkeys-lru), поставте плагін Redis Object Cache і виконайте wp redis enable. Після цього WordPress тримає результати запитів і обчислені дані в RAM замість того, щоб перепитувати MariaDB на кожному запиті.
Огляд
WordPress постійно ставить базі ті самі питання — options, меню, терміни. Персистентний об'єктний кеш відповідає на них із пам'яті. Ефект найбільший саме там, де сторінковий кеш безсилий: wp-admin, перегляд залогіненими, кошики WooCommerce і REST/AJAX-ендпоїнти. Redis — фактичний стандарт бекенда для цього.
Що потрібно мати
- Приблизно 256–512 MB вільної RAM для Redis (перевірте
free -h). - PHP-розширення Redis:
sudo apt install php8.3-redis. - WP-CLI (зручно) і бекап.
Покрокова інструкція
- Встановіть і запустіть Redis:
sudo apt install redis-server php8.3-redis sudo systemctl enable --now redis-server - Обмежте його апетит у
/etc/redis/redis.conf:
потімmaxmemory 256mb maxmemory-policy allkeys-lrusudo systemctl restart redis-server php8.3-fpm. - Переконайтесь, що він відповідає:
redis-cli ping→PONG(Redis за замовчуванням слухає лише 127.0.0.1 — так і залиште). - Встановіть і увімкніть drop-in:
sudo -u www-data wp plugin install redis-cache --activate sudo -u www-data wp redis enable sudo -u www-data wp redis status - Через день подивіться hit ratio:
redis-cli info stats | grep keyspace— влучань має бути значно більше, ніж промахів.
Типові проблеми
- «Status: Not connected»: бракує PHP-розширення або FPM не перезапущений після його встановлення.
- Кілька сайтів на одному Redis: колізії — задайте унікальний
WP_REDIS_PREFIXдля кожного сайту у wp-config.php. - Застарілі дані після прямих правок бази: одноразово очистьте
wp cache flush— зміни повз WordPress оминають інвалідацію кешу.
Коли звертатися в підтримку
Налаштування Redis — робота рівня застосунку на некерованому VPS; тикети — правильний канал, коли самому серверу бракує RAM для навантаження і треба підібрати апгрейд.
Часті запитання
Чим сторінковий кеш відрізняється від об'єктного?
Сторінковий кеш зберігає цілі HTML-сторінки для анонімних відвідувачів; об'єктний кеш тримає результати запитів у RAM і пришвидшує кожен запит, що виконує PHP — адмінку, кошики, залогінених.
Скільки RAM віддати Redis для WordPress?
Для типового сайту достатньо 256 MB (більшість використовує менше); жвавим магазинам WooCommerce може знадобитися 512 MB. Задайте maxmemory з політикою allkeys-lru, щоб Redis витісняв старі ключі.
Чи треба захищати Redis?
Тримайте його прив'язаним до 127.0.0.1 (за замовчуванням) і ніколи не відкривайте в інтернет; додайте requirepass у redis.conf, якщо сервер ділять кілька недовірених застосунків.
Схожі статті
- Як пришвидшити WordPress на VPS
- Як полагодити повільну адмінку WordPress
- Як підготувати WooCommerce до VPS-хостингу
- Як оптимізувати PHP для WordPress
Готові почати? Замовити WordPress VPS у Cloud2Y →
