Redis 使用场景
Redis 是一个基于内存的单线程的缓存中间件,利用它可以实现很多场景的需求。
- 数据缓存:string、hash
- 分布式数据共享:string、hash
- 分布式锁:setnx
- 分布式生成全局ID:incrby key number,利用原子性
- 计数器:incr key。文章的阅读量、微博点赞数、允许一定的延迟
- 限流:incr key。访问者的ip和其他信息作为key,访问一次增加一次计数,超过次数则返回false
- 位统计:set key value;setbit key bitPos 0/1。用来做大数据量的统计
- 临时购物车:string、hash
- 用户消息时间线:list
- 消息队列:list
- 抽奖:spop set
- 点赞、签到、打卡:set。对于这类场景每个人都是独立的。
- 商品标签:set
- 商品筛选:set;sdiff差集/sinter交集/sunion并集
- 用户关注:set
- 排行榜:zset