Redis в бэкенде: какие структуры, как работает вытеснение и на что нельзя рассчитывать?
Redis — сервер структур данных в памяти, а не просто «кэш строк». Кроме строк есть хеши (объект по полям), списки, множества и сортированные множества (рейтинги, окна по времени), потоки (журнал событий с группами потребителей), битовые карты и HyperLogLog. Команды выполняются по одной, поэтому INCR и SET NX атомарны без транзакции, но одна тяжёлая команда вроде KEYS блокирует всех — на проде нужен SCAN. При достижении maxmemory включается вытеснение: noeviction, allkeys-lru/allkeys-lfu или volatile-* (только ключи с TTL). Персистентность есть — снимки RDB и журнал AOF, — но она про восстановление после перезапуска, а не про сохранность каждой записи: при appendfsync everysec теряется последняя секунда. Отсюда правило: Redis не источник истины.