← Ко всем open source проектам

Redis

redis/redis

Redis — быстрый сервер структур данных в памяти для кеша, очередей, счетчиков, сессий и задач с низкой задержкой.

Форки 24,664
Автор redis
Язык C
Лицензия NOASSERTION
Обновлено 2026-06-11

Что это такое

Redis — сервер структур данных в памяти. Его часто называют кешем, но это слишком узко: Redis умеет хранить строки, хеши, списки, множества, упорядоченные множества, потоки и другие структуры, поверх которых строят счетчики, очереди, сессии, блокировки, ограничители частоты запросов и быстрые ответы для приложений.

Репозиторий redis/redis существует на GitHub с 2009 года. Основной язык — C, официальный сайт — redis.io. В современных метаданных проект описан как Redis с открытым кодом, а ветка разработки меняется вместе с текущей линией продукта; условия лицензирования и конкретную редакцию важно проверять под свою задачу.

Что внутри

Внутри — сервер Redis, клиентская утилита redis-cli, модули данных, тесты, сборка, документация по запуску и исходный код сетевого сервера. Важная идея Redis в том, что операции над структурами данных выполняются рядом с данными, поэтому многие задачи требуют меньше лишних походов в основную базу.

Минимальный сценарий через redis-cli

Пример показывает базовую модель: записать значение с временем жизни, прочитать его и увеличить счетчик. Именно такие маленькие операции часто становятся строительными блоками кеша и ограничителей частоты запросов.

Язык: Bash
redis-cli PING
redis-cli SET session:42 active EX 3600
redis-cli GET session:42
redis-cli INCR pageviews:home

Где он полезен

Redis полезен в веб-приложениях, очередях фоновых задач, счетчиках реального времени, ограничении частоты запросов, хранении сессий, временных токенах, сценариях публикации и подписки и быстрых индексах. Он особенно хорош там, где миллисекунды важны, а данные можно держать в памяти или восстанавливать из основного источника.

При этом Redis часто работает не вместо основной базы, а рядом с ней. PostgreSQL или MySQL остаются источником истины, а Redis ускоряет чтение, координацию и временное состояние.

Сильные стороны и ограничения

Сильная сторона Redis — скорость, простая модель команд и богатые структуры данных. Его легко начать использовать в маленьком месте, а затем расширять сценарии: от кеша до stream-обработки и распределенных координационных задач.

Ограничение — эксплуатационная дисциплина. Данные в памяти требуют контроля размера, политики вытеснения, настроек сохранения на диск, репликации, безопасности и понимания, что будет при перезапуске. Redis быстрый, но быстрый слой состояния легко превратить в скрытую критическую зависимость.