Wiki
Web / стек

Redis — что это простыми словами

Redis — in-memory база данных (кэш, очередь, pub/sub). Скорость 100k+ ops/sec на одном ядре. Основа сессий, лидерборд, rate-limit, очередей.

Redis (Remote Dictionary Server) — in-memory база данных / кэш / очередь / брокер сообщений. Хранит данные в оперативной памяти, из-за чего работает в 100-1000 раз быстрее классических БД. Разработан Salvatore Sanfilippo с 2009 года, open-source (BSD → SSPL/AGPL с 2024 — форк называется Valkey).

Типы данных: string (счётчики, кэш-значения), hash (объекты), list (очереди), set / sorted set (лидерборд, тэги), stream (event-log как Kafka lite), pub/sub (real-time уведомления), geo (координаты), bitmap / HyperLogLog (аналитика).

Основные use-case: (1) кэш запросов к MySQL/Postgres (session, response cache), (2) rate-limit (INCR с TTL), (3) очередь задач (Sidekiq, Celery, BullMQ), (4) лидерборд (ZADD/ZREVRANGE), (5) pub/sub для WebSocket-broadcast, (6) feature flags.

Практика: типичный VPS-XS €3/мес запросто держит Redis с 500 000 ops/sec для одного сайта. Персистентность — RDB snapshot + AOF. Кластер (Redis Cluster) — для scale-out; отдельная тема. У нас в /docs есть готовый recipe установки Redis + systemd.

Частые вопросы

Redis vs Memcached?
Redis богаче типами данных, персистентен, поддерживает cluster. Memcached — только строки, чуть быстрее для чистого кэша (небольшая разница).
Что с лицензией?
Redis 7.4+ (2024) — SSPL/AGPL, форк **Valkey** остался BSD и рекомендован Linux Foundation. Для 99 % случаев Valkey — прямая замена.

Смотрите также