Redis
Redis для бэкендера с нуля: структуры данных, кэширование, блокировки и счётчики, подключение к Spring Boot, персистентность и вытеснение. Поймёте, когда он нужен, а когда нет.
Раздел с нуля про Redis — быстрое in-memory хранилище, которое бэкенду нужно чаще всего как кэш, но умеет гораздо больше. Что это и когда применять, какие структуры данных есть, как правильно кэшировать, использовать для блокировок и счётчиков, подключать к Spring Boot и эксплуатировать в проде. Читать лучше по порядку.
- Что такое Redis: in-memory хранилище для backend-разработчика — Redis — быстрое in-memory хранилище ключ-значение. Разбираем, почему оно работает мгновенно, когда его использовать и как подключить из Java.
- Структуры данных Redis: String, Hash, List, Set, Sorted Set и другие — Какие структуры данных есть в Redis, чем они отличаются и когда использовать каждую — от счётчиков до рейтингов и очередей.
- Паттерны кэширования в Redis — Cache-aside, write-through, write-behind, протухание и инвалидация: как правильно строить кэш на Redis, чтобы не ловить устаревшие данные и cache stampede.
- Redis не только для кэша: блокировки, ограничение запросов, очереди и Pub/Sub — Как использовать Redis для распределённых блокировок, rate limiting, очередей и событийного обмена — с примерами команд и Java/Spring.
- Redis в Spring Boot: RedisTemplate, @Cacheable и Spring Session — Как подключить Redis к Spring Boot через Spring Data Redis: RedisTemplate, сериализация, кэш через @Cacheable и сессии через Spring Session.
- Эксплуатация Redis: персистентность, память, репликация — Как Redis хранит данные на диске, управляет памятью и остаётся доступным при сбоях — RDB, AOF, Sentinel, Cluster и мониторинг.