Настройки Redis
Для кластера Managed Service for Redis можно задать настройки, которые относятся к Redis.
Метки рядом с названием настройки позволяют определить, с помощью какого интерфейса задается значение этой настройки: консоль управления, CLI, API или Terraform. Метка Все интерфейсы
указывает, что поддерживаются все перечисленные интерфейсы.
В зависимости от выбранного интерфейса, одна и та же настройка будет представлена по-разному, например, Maxmemory policy в консоли управления соответствует:
maxmemory_policy
в gRPC API, Terraform;maxmemoryPolicy
в REST API.
Настройки СУБД
Доступны следующие настройки:
-
Client output buffer limit normal
Все интерфейсы
Ограничение объема выходного буфера для обычных клиентов.
Redis использует выходной буфер для временного хранения данных, сгенерированных запросом, перед отправкой в клиент. Если клиент отправляет новые запросы быстрее, чем Redis успевает обрабатывать текущие, это приводит к увеличению размера буфера.
Настройка включает в себя следующие параметры:
- Hard limit — жесткое ограничение объема буфера (в байтах). При превышении указанного значения соединение с клиентом будет немедленно прервано. Минимальное значение —
0
(ограничение отсутствует). Значение по умолчанию —0
. В консоли управления единицы измерения задаются параметром Hard limit unit. - Soft limit — мягкое ограничение объема буфера (в байтах). Соединение с клиентом будет прервано только если превышение указанного значения сохранялось в течение времени, заданного параметром Soft seconds. Минимальное значение —
0
(ограничение отсутствует). Значение по умолчанию —0
. В консоли управления единицы измерения задаются параметром Soft limit unit. - Soft seconds — время (в секундах), в течение которого допустимо превышение мягкого ограничения объема буфера. Минимальное значение —
0
. Значение по умолчанию —0
.
Подробную информацию о настройке см. в документации Redis
. - Hard limit — жесткое ограничение объема буфера (в байтах). При превышении указанного значения соединение с клиентом будет немедленно прервано. Минимальное значение —
-
Client output buffer limit pubsub
Все интерфейсы
Ограничение объема выходного буфера для клиентов, работающих в парадигме Pub/Sub
.Redis использует выходной буфер для временного хранения данных, сгенерированных запросом, перед отправкой в клиент. Если клиент отправляет новые запросы быстрее, чем Redis успевает обрабатывать текущие, это приводит к увеличению размера буфера.
Настройка включает в себя следующие параметры:
- Hard limit — жесткое ограничение объема буфера (в байтах). При превышении указанного значения соединение с клиентом будет немедленно прервано. Минимальное значение —
0
(ограничение отсутствует). Значение по умолчанию —33554432
(32 МБ). В консоли управления единицы измерения задаются параметром Hard limit unit. - Soft limit — мягкое ограничение объема буфера (в байтах). Соединение с клиентом будет прервано только если превышение указанного значения сохранялось в течение времени, заданного параметром Soft seconds. Минимальное значение —
0
(ограничение отсутствует). Значение по умолчанию —8388608
(8 МБ). В консоли управления единицы измерения задаются параметром Soft limit unit. - Soft seconds — время (в секундах), в течение которого допустимо превышение мягкого ограничения объема буфера. Минимальное значение —
0
, значение по умолчанию —60
.
Подробную информацию о настройке см. в документации Redis
. - Hard limit — жесткое ограничение объема буфера (в байтах). При превышении указанного значения соединение с клиентом будет немедленно прервано. Минимальное значение —
-
Databases
Все интерфейсы
Количество баз данных.
Redis использует концепцию логических баз данных, которые изолированы друг от друга. Операции с ключами и значениями в одной базе не влияют на данные в других базах. Каждая база идентифицируется своим номером (от
0
доDatabases − 1
).Минимальное значение —
1
, максимальное значение —2147483647
, значение по умолчанию —16
.Подробнее см. в документации Redis
.Важно
Изменение этого параметра приведет к перезапуску всех запущенных нод Redis.
-
Maxmemory percent
Все интерфейсы
Максимальный процент оперативной памяти, который будет выделен для пользовательских данных на хостах кластера Managed Service for Redis.
Минимальное значение — 1, максимальное значение — 75, значение по умолчанию — 75.
Примечание
Понижение максимального процента понизит вместимость базы данных. Это может быть полезно, если в базе наблюдаются проблемы с OOM Killer (Out of Memory Killer).
-
Maxmemory policy
Все интерфейсы
Режим управления памятью при ее дефиците.
volatile-lru
— удалять ключи с истекшим (expired) сроком жизни (Time-To-Live, TTL), начиная с наиболее давно использованного (least recently used, LRU);volatile-lfu
— удалять ключи с истекшим сроком жизни, начиная с наиболее редко используемого (least frequently used, LFU);volatile-ttl
— удалять ключи с истекшим сроком жизни, начиная с ключа с наименьшим сроком жизни;volatile-random
— удалять ключи с истекшим сроком жизни в произвольном порядке;allkeys-lru
— удалять ключи вне зависимости от их срока жизни, начиная с наиболее давно использованного;allkeys-lfu
— удалять ключи вне зависимости от их срока жизни, начиная с наиболее редко используемого;allkeys-random
— удалять ключи вне зависимости от их срока жизни в произвольном порядке;noeviction
(по умолчанию) — не удалять ключи. Вернуть ошибку, если для вставки данных недостаточно памяти.
Подробнее см. в документации Redis
. -
Notify keyspace events
Все интерфейсы
Настройка уведомлений о событиях, происходящих в пространстве ключей.
Значение — строка с модификаторами, которые управляют выводом уведомлений. Значение по умолчанию — пустая строка (вывод уведомлений отключен).
Полный список модификаторов см. в документации Redis
. -
Slowlog log slower than
Все интерфейсы
Запросы, выполняющиеся дольше указанного времени (в микросекундах), считаются длительными. Такие запросы попадают в лог медленных запросов (slow log). При значении
0
в этот лог будут попадать все выполняемые запросы.Минимальное значение —
-1
(лог медленных запросов не ведется), максимальное значение —9223372036854775807
, значение по умолчанию:10000
.Подробнее см. в документации Redis
. -
Slowlog max len
Все интерфейсы
Максимальное количество записей в логе медленных запросов. При заполнении лога перед вставкой новых записей будут удалены самые старые.
Минимальное значение —
0
(лог медленных запросов не ведется), максимальное значение —9223372036854775807
, значение по умолчанию —1000
.Подробнее см. в документации Redis
. -
Timeout
Все интерфейсы
Время в секундах, в течение которого будет поддерживаться соединение с неактивными клиентами.
Минимальное значение и значение по умолчанию —
0
(соединения не закрываются), максимальное значение —2147483647
.Подробнее см. в документации Redis
.