1. Redis基础命令全景概览
作为从业十年的基础设施工程师,我处理过数百个Redis生产环境案例。新手常犯的错误是直接跳进复杂场景,却连基础命令都不熟悉。本文将系统梳理Redis五大核心数据类型的23个必会命令,包含我在阿里云百万QPS业务中验证过的最佳实践。
Redis之所以成为互联网公司的标配缓存,核心在于其简单暴力的内存操作模型。所有命令都是原子执行,单线程架构避免了锁竞争,这使得最简单的SET/GET也能支撑15万QPS。但要注意,不同数据结构的命令性能差异可达10倍以上。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 字符串类型深度解析
2.1 键值操作三剑客
bash复制# 基础写入(生产环境务必设置过期时间)
SET user:1001 "张三" EX 3600 NX
# 原子计数器(秒杀场景核心命令)
INCR product:1001_stock
DECRBY product:1001_stock 5
# 批量操作(降低网络开销)
MSET config:max_conn 5000 config:timeout 300
关键经验:SET的NX参数是分布式锁的基石,但生产环境一定要配合EX使用。我曾见过一个未设置过期时间的锁导致整个集群阻塞的案例。
2.2 位图实战技巧
bash复制# 用户签到系统(1亿用户每日签到仅需12MB)
SETBIT sign:202305 100000001 1
BITCOUNT sign:202305
位图命令看似冷门,但在大规模标记系统中性能碾压传统方案。某社交平台用BITOP实现好友推荐,QPS提升40倍。
3. 哈希类型工程实践
3.1 对象存储方案
bash复制# 用户画像存储
HSET user:1001 name "张三" age 28 vip true
HINCRBY user:1001 login_count 1
# 商品维度统计
HMSET product:1001 views 156 carts 28 buys 5
哈希类型在存储对象属性时,比字符串分key存储节省50%内存。但要注意哈希不适合存储超过500个字段的对象,会触发渐进式rehash导致性能波动。
3.2 购物车实战案例
redi复制
