Краткий ответ: Установите 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 (удобно) и бэкап.

Пошаговая инструкция

  1. Установите и запустите Redis:
    sudo apt install redis-server php8.3-redis
    sudo systemctl enable --now redis-server
  2. Ограничьте его аппетит в /etc/redis/redis.conf:
    maxmemory 256mb
    maxmemory-policy allkeys-lru
    затем sudo systemctl restart redis-server php8.3-fpm.
  3. Убедитесь, что он отвечает: redis-cli pingPONG (Redis по умолчанию слушает только 127.0.0.1 — так и оставьте).
  4. Установите и включите 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
  5. Через день посмотрите 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 в Cloud2Y →

Помог ли вам данный ответ? 0 Пользователи нашли это полезным (0 голосов)