Очистка кэша командой KEYS остановила все сервисы, работающие с Redis
Чтобы сбросить кэш товаров, разработчик выполнил на продовом Redis скрипт, который получает ключи командой KEYS products:* и удаляет их. В Redis около 20 миллионов ключей. На несколько секунд все сервисы, использующие этот Redis, получили таймауты.
Почему?
- KEYS перебирает все ключи разом и блокирует Redis на время выполнения
- Удаление ключей по маске запрещено в продовой конфигурации
- Redis перезапускается после массового удаления ключей
- Команда KEYS очищает весь Redis, а не только ключи по маске
