Медленная база данных — самая частая причина тормозящего сайта на общем хостинге. Кеш в оперативной памяти снимает большую часть нагрузки с 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.
Очистить кеш Redis из консоли можно командой:
redis-cli FLUSHALL
Итог: как выбрать и проверить кеш
- Для WordPress и CMS с объектами выбирайте Redis
- Для простого кеша фрагментов страниц достаточно Memcached
- Ставьте сервис через «Настройки» → «Возможности», не через сторонние репозитории
- Проверяйте статус командой systemctl status и пинг сервиса из консоли
- Очищайте кеш после переноса сайта или смены домена
Если ресурсов сервера не хватает даже с кешем, стоит пересмотреть тариф VDS — подробнее о лицензиях и мощности серверов ISPmanager 6 в статье про лицензии ISPmanager 6.