Мы добавили Redis и положили продакшн на 3 часа
Год назад добавляли Redis для кеширования данных пользователей. Нагрузка на базу была 5000 запросов в минуту, хотели снизить до 500. Кеш заработал. База вздохнула. Мы порадовались. Через две недели Redis упал из-за нехватки памяти. Приложение не упало с ошибкой. Оно просто зависало на каждом запросе в ожидании ответа от кеша которого нет. Без таймаута, без fallback на базу. 3 часа даунтайма. Пока нашли причину и восстановили сервис. Два урока которые я с тех пор применяю везде. 1. Каждый внешний сервис в критическом пути должен иметь таймаут и fallback. Кеш это не просто оптимизация, это точка отказа. 2. Мониторинг кеша так же важен как мониторинг базы данных. Мы не следили за использованием памяти Redis. Какой у вас был случай когда простое улучшение сделало систему хуже?