Redis Cache выдает ошибку OOM с помощью volitile-lru - PullRequest
0 голосов
/ 01 мая 2018

Для отладки мы установили в Redis значение volitile-lru и maxmemory, равное 10 МБ

.

Мы используем Redis для HTTP-кэширования в интернет-магазине - при наличии параллельных запросов на странице возникает ошибка:

OOM command not allowed when used memory > 'maxmemory'
* Появляется 1005 *. Не следует ли этого избежать, установив для maxmemory-policy значение volitile-lru? Redis не достаточно быстр, чтобы освободить память и установить новую (каждый запрос имеет около 200-600kb)

1 Ответ

0 голосов
/ 02 мая 2018

Из документов:

volatile-lru: evict keys by trying to remove the less recently used (LRU) keys first, but only among keys that have an expire set, in order to make space for the new data added.

Похоже, ваши ключи не имеют срока действия. Если это так, вы можете рассмотреть возможность использования allkeys-lru в качестве политики выселения.

Вы также можете использовать INFO stats, чтобы увидеть, имеет ли evicted_keys значение больше нуля.

...