# 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/uk/kb/ispmanager6-perenos-mezhdu-serverami/).

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

```
redis-cli FLUSHALL
```

## Підсумок: як вибрати і перевірити кеш

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

Якщо ресурсів сервера не вистачає навіть з кешем, варто переглянути тариф VDS — детальніше про ліцензії і потужність серверів ISPmanager 6 у статті про [ліцензії ISPmanager 6](https://www.zevshost.net/uk/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/uk/kb/ispmanager6-databases/) і [про Node.js і Python у панелі](https://www.zevshost.net/uk/kb/ispmanager6-nodejs-python/).

```
# Порівняти обсяг памʼяті, зайнятої Redis, з лімітом сервера
redis-cli INFO memory | grep used_memory_human

# Переконатися, що PHP справді бачить розширення redis
php -m | grep -i redis
```

---

Джерело: https://www.zevshost.net/uk/kb/ispmanager6-redis-memcached/
Оновлено: 2026-09-30
