2025-12-07 Redis的5种基本数据类型业务使用场景<补充>

Redis 数据类型业务使用场景

一、String(字符串)

主要场景

1缓存数据

bash
SET user:1001 "{name:'张三',age:25}"
EXPIRE user:1001 300 # 5分钟过期

2计数器

bash
文章阅读量
INCR article:1001:views
GET article:1001:views

限流器(每秒限制10次)
INCR api:limit:user1
EXPIRE api:limit:user1 1

3分布式锁

bash
SET lock:order:create "1" NX EX 30 # 不存在才设置,30秒过期

4Session存储

bash
SET session:abc123 "{userId:1001,loginTime:1621234567}"
EXPIRE session:abc123 3600

二、Hash(哈希)

主要场景

1用户信息存储

bash
用户对象
HMSET user:1001 name "李四" age 28 city "北京"
HINCRBY user:1001 age 1 # 生日加1岁
HGETALL user:1001

2购物车

bash
商品ID:数量
HSET cart:user1 product:1001 2
HSET cart:user1 product:1002 1
HINCRBY cart:user1 product:1001 -1 # 减少数量

3对象配置存储

bash
系统配置
HMSET config:payment alipay_enabled 1 wechat_enabled 0

三、List(列表)

主要场景

1消息队列

bash
生产者
LPUSH queue:order "订单数据"

消费者
BRPOP queue:order 30 # 阻塞获取

2最新列表

bash
最新10条微博
LPUSH timeline:user1 "微博内容1"
LTRIM timeline:user1 0 9 # 只保留10条

3历史记录

bash
用户浏览历史
LPUSH history:user1 "product:1001"
LTRIM history:user1 0 49 # 保留50条

四、Set(集合)

主要场景

1标签系统

bash
给文章打标签
SADD article:1001:tags "redis" "数据库" "缓存"

查找有redis标签的文章
SINTER tag:redis:articles tag:database:articles

2共同好友/兴趣

bash
用户A和用户B的共同好友
SINTER friends:userA friends:userB

可能认识的人(差集)
SDIFF friends:userB friends:userA

3抽奖/随机推荐

bash
SADD lottery:2024 user1 user2 user3
SRANDMEMBER lottery:2024 3 # 随机3个用户
SPOP lottery:2024 # 随机弹出(不可重复抽奖)

4数据去重

bash
爬虫URL去重
SADD crawled:urls "http://example.com/page1"
SISMEMBER crawled:urls "http://example.com/page1"

五、Sorted Set(有序集合)

主要场景

1排行榜

bash
游戏得分排行
ZADD leaderboard 5000 "player1" 4800 "player2"
ZREVRANGE leaderboard 0 9 WITHSCORES # 前10名
ZRANK leaderboard "player1" # 查看排名

2延迟队列

bash
订单超时处理(时间戳作为score)
ZADD delay:queue 1621234600 "order:1001"
ZRANGEBYSCORE delay:queue 0 1621234567 # 获取到期订单

3时间线/Feed流

bash
朋友圈按时间排序
ZADD feed:user1 1621234567 "post:1001"
ZREVRANGE feed:user1 0 9 # 最新10条

4范围查找

bash
查找积分在1000-2000的用户
ZRANGEBYSCORE users:score 1000 2000

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容