Full-stack-skills redis

Guides Redis usage including data structures (strings, hashes, lists, sets, sorted sets), caching patterns, pub/sub, persistence (RDB/AOF), clustering, and Lua scripting. Use when the user needs to implement caching, session storage, rate limiting, queues, or any Redis-based data layer.

install
source · Clone the upstream repo
git clone https://github.com/partme-ai/full-stack-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/partme-ai/full-stack-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/database-skills/redis" ~/.claude/skills/partme-ai-full-stack-skills-redis && rm -rf "$T"
manifest: skills/database-skills/redis/SKILL.md
source content

When to use this skill

Use this skill whenever the user wants to:

  • Use Redis data structures (string, hash, list, set, sorted set) and commands
  • Implement caching, session storage, rate limiting, or message queues with Redis
  • Configure persistence (RDB/AOF), replication, Sentinel, or Redis Cluster
  • Write Lua scripts for atomic Redis operations
  • Connect via redis-cli or language drivers (connection pooling, serialization)

How to use this skill

Workflow

  1. Identify the use case - Caching, session store, queue, pub/sub, or data structure
  2. Choose the data structure - String for simple values, Hash for objects, List for queues, Sorted Set for rankings
  3. Implement with appropriate commands - Use the patterns below
  4. Configure persistence and replication - Based on durability requirements

Quick-Start Example: Caching with TTL

# Set a cache entry with 5-minute TTL
redis-cli SET user:1001:profile '{"name":"Alice","role":"admin"}' EX 300

# Retrieve the cached value
redis-cli GET user:1001:profile

# Check remaining TTL
redis-cli TTL user:1001:profile

Rate Limiting with Sorted Sets

# Add request timestamp to sorted set
redis-cli ZADD rate:user:1001 1710000000 "req1"

# Count requests in the last 60 seconds
redis-cli ZRANGEBYSCORE rate:user:1001 1709999940 1710000000

# Remove expired entries
redis-cli ZREMRANGEBYSCORE rate:user:1001 0 1709999940

Best Practices

  1. Use namespaced keys - Format as
    service:entity:id:field
    (e.g.,
    app:user:1001:session
    )
  2. Always set TTL - Prevent memory leaks from stale data; use
    EX
    /
    PX
    on SET
  3. Avoid large keys - Split hashes over 1MB; use SCAN instead of KEYS in production
  4. Choose persistence wisely - RDB for snapshots (fast restart), AOF for durability (every write)
  5. Secure production - Require password (
    requirepass
    ), bind to private IPs, disable
    FLUSHALL

Keywords

redis, cache, caching, 缓存, data structures, 数据结构, pub/sub, sentinel, cluster, 主从, 集群, rate limiting, session store, Lua scripting