Redis

Redis — это нереляционная СУБД с открытым исходным кодом, хранящая данные в оперативной памяти для обеспечения минимальной задержки доступа.

Redis (Remote Dictionary Server) — это NoSQL СУБД, которая хранит все данные в RAM, обеспечивая субмиллисекундное время отклика. В отличие от традиционных систем, Redis поддерживает расширенные структуры данных: hashes, lists, sets и sorted sets с ранжированием по весу.

Принцип работы

Система работает в однопоточном режиме для обработки команд, что исключает накладные расходы на блокировки и переключение контекста. Для обеспечения сохранности данных используются механизмы снимков (RDB) и логирование операций (AOF) на диск, что позволяет восстановить состояние после перезагрузки.

Основные сценарии использования включают кэширование запросов к основным БД, управление сессиями пользователей, реализацию очередей сообщений через Pub/Sub или Streams, а также хранение счетчиков в реальном времени.

  • Производительность: до 1 миллиона операций в секунду на одном ядре процессора.
  • Команда SET key value выполняется мгновенно, не дожидаясь завершения дискового ввода-вывода.
  • Поддержка репликации и автоматического переключения ролей через Redis Sentinel.