Skip to main content

Redis

Overview

Redis is an in-memory data store used as a cache, session store, message broker, rate limiter, and lightweight database (with optional persistence). Its data structures (strings, hashes, lists, sets, sorted sets, streams) map well to common backend patterns.

Key concepts

  • Single-threaded command core: Fast, but long commands block others.
  • Eviction policies: volatile-lru, allkeys-lfu, etc., when memory is full.
  • Persistence: RDB snapshots vs AOF logs: trade durability vs performance.
  • Replication & cluster: High availability topologies.
  • Security: ACLs, TLS, never expose open instances to the internet.

Cache-aside pattern

Sample: CLI commands

redis-cli SET session:abc123 '{"user_id":42}' EX 3600
redis-cli GET session:abc123
redis-cli INCR rate:ip:203.0.113.10

References