# Redis и Memcached в ISPmanager 6: настройка кеша сайта

> Redis и Memcached в ISPmanager 6: установка через менеджер функций, подключение к WordPress, разница между кешами и проверка работы через консоль.

Медленная база данных — самая частая причина тормозящего сайта на общем хостинге. Кеш в оперативной памяти снимает большую часть нагрузки с MySQL, и ISPmanager 6 умеет ставить Redis и Memcached в пару кликов. Разберём, чем они отличаются и как их подключить.

## Чем Redis отличается от Memcached

| Параметр | Redis | Memcached |
| --- | --- | --- |
| Типы данных | Строки, списки, хеши, множества | Только строки |
| Сохранение на диск | Есть, опционально | Нет, только память |
| Типичное применение | Кеш объектов, очереди, сессии | Простой кеш страниц и фрагментов |

Для WordPress и большинства CMS Redis подходит лучше: он переживает перезапуск процесса, если включено сохранение на диск, и его проще использовать для очередей задач.

## Установка Redis через панель

Откройте «Настройки» → «Возможности» → найдите пункт Redis и нажмите «Установить». ISPmanager 6 сам добавит сервис в автозагрузку и откроет сокет только для локальных подключений на порту 6379.

Проверить, что служба запущена, можно из консоли сервера:

```
systemctl status redis
redis-cli ping
```

Команда redis-cli ping должна вернуть PONG — это значит, что сервис принимает подключения.

## Установка Memcached через панель

Memcached ставится тем же способом: «Настройки» → «Возможности» → Memcached → «Установить». По умолчанию сервис слушает порт 11211 и ограничивает объём памяти под кеш, обычно 64 МБ на сайт — значение можно увеличить в настройках модуля при большом количестве объектов кеша.

```
systemctl status memcached
echo stats | nc 127.0.0.1 11211
```

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

## Подключение кеша к WordPress

Для Redis установите плагин Redis Object Cache и укажите в его настройках хост 127.0.0.1 и порт 6379 — плагин сам создаст файл object-cache.php в каталоге wp-content. Для Memcached подойдёт плагин W3 Total Cache с включённым модулем Object Cache и адресом 127.0.0.1:11211.

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

## Кеш после переноса или клонирования сайта

Если сайт переносили на другой сервер, старые ключи кеша будут указывать на прежние данные — обязательно очистите Redis или Memcached сразу после переноса, иначе клиент увидит устаревший контент. Порядок переноса сайтов описан в статье про [перенос сайта между серверами ISPmanager 6](https://www.zevshost.net/ru/kb/ispmanager6-perenos-mezhdu-serverami/).

Очистить кеш Redis из консоли можно командой:

```
redis-cli FLUSHALL
```

## Итог: как выбрать и проверить кеш

- Для WordPress и CMS с объектами выбирайте Redis
- Для простого кеша фрагментов страниц достаточно Memcached
- Ставьте сервис через «Настройки» → «Возможности», не через сторонние репозитории
- Проверяйте статус командой systemctl status и пинг сервиса из консоли
- Очищайте кеш после переноса сайта или смены домена

Если ресурсов сервера не хватает даже с кешем, стоит пересмотреть тариф VDS — подробнее о лицензиях и мощности серверов ISPmanager 6 в статье про [лицензии ISPmanager 6](https://www.zevshost.net/ru/kb/ispmanager6-licenzii-tipy/).

## Типичные ошибки Redis и Memcached в ISPmanager

| Сообщение | Причина |
| --- | --- |
| redis-cli: NOAUTH Authentication required | В конфиге включён requirepass (панель иногда включает пароль по умолчанию при обновлении), а плагин WordPress подключается без него |
| Connection refused при echo stats \| nc 127.0.0.1 11211 | Memcached не запустился после установки, либо упал из-за нехватки памяти в лимите модуля |
| PHP Warning: Redis::connect(): connection refused | В PHP не установлено расширение redis — проверяется через `php -m`; сам сервис Redis при этом может работать исправно |
| OOM command not allowed when used memory > maxmemory | Достигнут лимит maxmemory для Redis при политике вытеснения по умолчанию noeviction — для кеша нужна политика allkeys-lru |
| Кеш опустел сам после обновления панели | Обновление ISPmanager иногда перезапускает сервисы Redis и Memcached — для Memcached это всегда полная потеря кеша, для Redis зависит от персистентности |

## Когда Redis или Memcached через панель не подходят

- Сайт работает на нескольких серверах за балансировщиком — локальный кеш на одном узле не увидят остальные ноды, нужен вынесенный кеш-сервер или managed Redis
- Нужна гарантированная персистентность без потери данных при рестарте — Memcached принципиально не сохраняет данные на диск, для этого годится только Redis с включённым AOF или RDB
- Объём кешируемых данных превышает доступную оперативную память тарифа — оба варианта хранят всё в RAM, при нехватке памяти начинается вытеснение ключей или падение сервиса
- Нужен full-page cache с инвалидацией по тегам — Redis Object Cache кеширует объекты WordPress, а не HTML целиком; для кеша страниц нужен отдельный модуль вроде Nginx FastCGI cache

## Проверка результата

После подключения кеша проверяйте не только факт запуска сервиса, но и то, что PHP реально видит нужное расширение — иначе сайт продолжит ходить напрямую в MySQL без всякой ошибки. О работе с другими сервисами в ISPmanager 6 — в статьях [про базы данных](https://www.zevshost.net/ru/kb/ispmanager6-databases/) и [про Node.js и Python в панели](https://www.zevshost.net/ru/kb/ispmanager6-nodejs-python/).

```
# Сравнить объём памяти, занятой Redis, с лимитом сервера
redis-cli INFO memory | grep used_memory_human

# Убедиться, что PHP реально видит расширение redis
php -m | grep -i redis
```

---

Источник: https://www.zevshost.net/ru/kb/ispmanager6-redis-memcached/
Обновлено: 2026-09-30
