Конфигурация Redis redis.conf для кэширования сессий PHP и CMS

Обновлено: Сентябрь 2026 Стек: Redis 7.2+, PHP Redis Extension 6.0+ Проверено: Production-Ready

Готовый redis.conf под кэширование: maxmemory-policy allkeys-lru, отключение фонового сохранения save "", unix сокет для 30% ускорения и защита.

Интерактивный генератор под ваши параметры
Параметры подставляются в код в реальном времени
/etc/redis/redis.conf
# /etc/redis/redis.conf
# Оптимизация Redis под сессии и быстрый кэш в RAM
bind 127.0.0.1 ::1
port 6379

# Unix сокет (на 25-35% быстрее TCP для локального стека)
unixsocket /run/redis/redis-server.sock
unixsocketperm 770

# Ограничение оперативной памяти (например 512 MB для сессий)
maxmemory 512mb
# Политика вытеснения: удалять наименее используемые ключи при заполнении
maxmemory-policy allkeys-lru

# Отключаем сброс на диск для чистого кэша (снижает I/O до 0)
save ""
appendonly no

# Лимиты клиентов
maxclients 10000
timeout 0
tcp-keepalive 300

# Защищенный режим
protected-mode yes

Разбор ключевых директив конфигурации

Техническое обоснование директив и их прямое влияние на процессор (CPU), оперативную память (RAM) и дисковый ввод-вывод (NVMe I/O).

Директива / Блок Рекомендуемое значение Зачем нужно и системное влияние (CPU / RAM / I-O)
maxmemory-policy allkeys-lru allkeys-lru При достижении лимита памяти автоматически удаляет самые старые неиспользуемые ключи кэша, защищая сервер от падения.
pm.max_requests 500 - 1000 Периодически перезапускает PHP-воркеры после обработки N запросов, предотвращая утечки оперативной памяти (Memory Leak).
request_terminate_timeout 180s Принудительно убивает зависшие PHP-скрипты, защищая пул от полного исчерпания свободных процессов при тяжелых SQL-запросах.
innodb_flush_log_at_trx_commit 2 Сбрасывает транзакции MySQL на диск раз в секунду вместо каждого коммита, увеличивая скорость записи в БД в 3-5 раз.

Рекомендуемые системные требования VDS под этот стек

Расчет минимальной и оптимальной конфигурации виртуального сервера для стабильной работы без сбоев.

Оптимальный сайзинг: 2 vCPU, 4 GB RAM, NVMe
Расчетная нагрузка: до 50 000 сессий/сутки
2 CPU / 4 GB NVMe
⚡

Timeweb Cloud

Рекомендуемые ресурсы
2 vCPU / 4 GB RAM / 40 GB NVMe
2 vCPU / 4 GB RAM
🔷

Selectel

Рекомендуемые ресурсы
2 vCPU / 4 GB RAM / 40 GB NVMe
Turbo 4 GB
🟠

Beget

Рекомендуемые ресурсы
2 vCPU / 4 GB RAM / 40 GB NVMe

Онлайн-утилиты SysKit для проверки этого сервера

Протестируйте корректность применения конфигурации прямо сейчас в один клик.

Частые ошибки при настройке и их решение (FAQ)

Типовые проблемы вебмастеров и сисадминов при внедрении данной конфигурации.

Как переключить сессии PHP на Redis?
В файле `php.ini` укажите: `session.save_handler = redis` и `session.save_path = "unix:/run/redis/redis-server.sock?weight=1"`.
Как понять, что пулу PHP-FPM не хватает памяти?
В логе `/var/log/php-fpm.log` появляется предупреждение `server reached pm.max_children setting, consider raising pm.max_children`. Также команда `dmesg | grep oom` покажет OOM-киллер.
Нужно ли перезагружать службу после изменения параметров?
Да, для применения настроек выполните: `systemctl restart php8.2-fpm` (или вашу версию PHP) и `systemctl restart mysql`.