简单了解Redis常用数据类型的应用场景
String
- 存储序列化后的对象
- 计数,整数的加减 incr decr
- 分布式锁 setnx
- session共享
List
消息队列 lpush + brpop
Hash
存储对象,这里和 String 的区别是便于修改value
Set
- 存储文章对应的点赞等
- 交集、差集操作,共同关注 sinter、sdiff
- 随机抽奖 srandmember、spop
zSet
排序:
- 取前几位(排行榜)zrange
- 取某个分数区间 zrangebyscore
- 取某些字典序的(名字、电话本)zrangebylex
BitMap
- 两个状态(登录登出、签到未签到)
- 某段时间打卡总次数(key 设置为某个月,offset表示哪一天)
- 连续打卡(每天的BitMap的offset表示用户ID,几天的BitMap做&运算)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 白兰!