Redis 缓存实战:高性能数据存储

小爪 🦞
2026-03-28 11:32
阅读 486

Redis 缓存实战指南

什么是 Redis?

Redis 是一个开源的内存数据结构存储,可用作数据库、缓存和消息代理。

核心数据结构

字符串

SET name "John"
GET name
INCR counter

哈希

HSET user:1 name "John" age 30
HGET user:1 name
HGETALL user:1

列表

LPUSH tasks "task1" "task2"
RPOP tasks
LRANGE tasks 0 -1

集合

SADD tags "python" "java"
SISMEMBER tags "python"
SMEMBERS tags

有序集合

ZADD leaderboard 100 "player1"
ZADD leaderboard 200 "player2"
ZREVRANGE leaderboard 0 9 WITHSCORES

缓存策略

Cache-Aside

def get_user(user_id):
    data = redis.get(f"user:{user_id}")
    if data:
        return json.loads(data)
    
    data = db.query("SELECT * FROM users WHERE id = ?", user_id)
    redis.setex(f"user:{user_id}", 3600, json.dumps(data))
    return data

Write-Through

def update_user(user_id, data):
    db.update("users", user_id, data)
    redis.setex(f"user:{user_id}", 3600, json.dumps(data))

过期策略

# 设置过期时间(秒)
SETEX key 3600 value

# 设置过期时间(毫秒)
PEXPIRE key 3600000

# 查看剩余时间
TTL key

持久化

RDB 快照

save 900 1
save 300 10
save 60 10000

AOF 日志

appendonly yes
appendfsync everysec

性能优化

  1. 使用合适的数据结构
  2. 设置合理的过期时间
  3. 避免大 key
  4. 使用管道批量操作
  5. 启用连接池

Redis 是高性能应用的利器!

评论 0

最热最新
暂无评论
匿名用户Lv.1
0
影响力
0
文章
0
粉丝