WordPress как на ладони
Очень Удобный и Быстрый Хостинг для сайтов на WordPress. Пользуюсь сам и вам рекомендую!

Redis Object Cache

Создает постоянный объект кэш. Работает на сервере Redis. Поддерживает Predis, PhpRedis (PECL), HHVM, репликации, кластеризации и WP-CLI.

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

Этот плагин является форком Redis Object Cache от Eric Mann and Erick Hitter.

pj-object-cache-red — аналог этого плагина, который работает быстрее, но у него нет страницы в админке и некоторых настроек, которые имеет этот плагин.

Подробнее про объектный кэш читайте в отдельной статье.

Параметры соединения

По умолчанию кэш объектов подключается к Redis по протоколу TCP через 127.0.0.1:6379 и устанавливает database 0.

Чтобы настроить параметры соединения, задайте любую из следующих констант в файле wp-config.php.

WP_REDIS_CLIENT(default: not set)
Устанавливает клиента используемого для связи с Redis. Поддерживает hhvm, pecl и predis.
WP_REDIS_SCHEME(default: tcp)
Задает протокол, используемый для связи с экземпляром Redis. Внутренне клиент использует класс соединения, связанный с указанной схемой соединения. Поддерживает TCP (протокол TCP/IP), Unix (Unix сокеты домена), TLS (безопасность транспортного уровня) или HTTP (протокол HTTP через Webdis).
WP_REDIS_HOST(default: 127.0.0.1)
IP или имя хоста целевого сервера. Игнорируется при подключении к Redis с помощью сокетов домена UNIX.
WP_REDIS_PORT(default: 6379)
Порт TCP/IP целевого сервера. Игнорируется при подключении к Redis с помощью сокетов домена UNIX.
WP_REDIS_PATH(default: not set)
Путь файла сокета домена UNIX, используемого при подключении к Redis с помощью сокетов домена UNIX.
WP_REDIS_DATABASE(default: 0)
Принимает числовое значение, используемое для автоматического выбора логической базы данных с помощью команды SELECT.
WP_REDIS_PASSWORD(default: not set)
Принимает значение, используемое для аутентификации на сервере Redis, защищенном паролем с помощью команды AUTH.

Параметры конфигурации

Полный список параметров конфигурации: https://github.com/rhubarbgroup/redis-cache/#configuration

Чтобы настроить конфигурацию, определите любую из следующих констант в wp-config.php.

WP_REDIS_PREFIX
Префикс, используемый для всех ключей кэша во избежание коллизий. Заменяет WP_CACHE_KEY_SALT.
WP_CACHE_KEY_SALT(default: not set)

Эта константа устарела, вместо нее нужно использовать WP_REDIS_PREFIX.

Задает префикс для всех ключей кэша. Полезно когда множественные установки используют общий wp-config.php или $table_prefix. Установка этой константы гарантирует уникальность ключей кэша.

WP_REDIS_SELECTIVE_FLUSH(default: not set)
Если задано значение true, при очистке кэша удаляются только ключи с префиксом WP_CACHE_KEY_SALT (вместо очистки всей базы данных Redis).
WP_REDIS_MAXTTL(default: not set)
Устанавливает максимальное время жизни (в секундах) для кэша с временем жизни 0.
WP_REDIS_GLOBAL_GROUPS(default: ['blog-details', 'blog-id-cache', 'blog-lookup', 'global-posts', 'networks', 'rss', 'sites', 'site-details', 'site-lookup', 'site-options', 'site-transient', 'users', 'useremail', 'userlogins', 'usermeta', 'user_meta', 'userslugs'])
Задайте список глобальных групп Кэша (network-wide групп), к которым не следует добавлять префикс blog-id (для мультисайта).
WP_REDIS_IGNORED_GROUPS(default: ['counts', 'plugins'])
Задает группы кэша, которые не должны кэшироваться в Redis.
WP_REDIS_DISABLED(default: not set)
Установите значение в true, чтобы отключить кэш объектов. Нужно для дебага.
WP_REDIS_IGBINARY(default: not set)
Установите значение true, чтобы включить сериализатор igbinary.

Репликация и Кластеризация

Чтобы использовать репликацию, сегментирование или кластеризацию, убедитесь, что сервер работает под управлением PHP7 или выше (HHVM не поддерживается) и обратитесь к документации Predi или PhpRedis.

Для репликации используется константа WP_REDIS_SERVERS, для сегментирования WP_REDIS_SHARDS и для кластеризация WP_REDIS_CLUSTER.

Для аутентификации используйте константу WP_REDIS_PASSWORD.

Репликация (Master-Slave):

define( 'WP_REDIS_SERVERS', [
	'tcp://127.0.0.1:6379?database=5&alias=master',
	'tcp://127.0.0.2:6379?database=5&alias=slave-01',
] );

Репликация (Redis Sentinel):

define( 'WP_REDIS_CLIENT', 'predis' );
define( 'WP_REDIS_SENTINEL', 'mymaster' );
define( 'WP_REDIS_SERVERS', [
	'tcp://127.0.0.1:5380',
	'tcp://127.0.0.2:5381',
	'tcp://127.0.0.3:5382',
] );

Шардинг:

define( 'WP_REDIS_SHARDS', [
	'tcp://127.0.0.1:6379?database=10&alias=shard-01',
	'tcp://127.0.0.2:6379?database=10&alias=shard-02',
	'tcp://127.0.0.3:6379?database=10&alias=shard-03',
] );

Кластеризация (Redis 3.0+):

define( 'WP_REDIS_CLUSTER', [
	'tcp://127.0.0.1:6379?database=15&alias=node-01',
	'tcp://127.0.0.2:6379?database=15&alias=node-02',
] );

Команды WP-CLI

Чтобы использовать команды WP-CLI, убедитесь, что плагин активирован:

wp plugin activate redis-cache

Поддерживаются следующие команды:

wp redis status
Показать состояние кэша объектов Redis и (по возможности) клиента.
wp redis enable
Включает кэш объектов Redis. Созадет drop-in файл object-cache.php в папке wp-content, если его там еще нет.
wp redis disable
Отключает кэш объектов Redis. Удаляет drop-in файл object-cache.php в папке wp-content, если это известный файл (добавлен плагином).
wp redis update-dropin
Обновляет drop-in файл object-cache.php в папке wp-content.
6 комментариев
    Войти