缓存、数据共享分布式、分布式锁、全局 ID、计数器、限流、位统计、购物车、时间线 Timeline、消息队列、抽奖、点赞、签到、打卡、商品标签、商品筛选、用户关注、推荐模型、排行榜.1.缓存
String类型2.数据共享分布式
例如:热点数据缓存(例如报表、明星出轨),对象缓存、全页缓存、可以提升热点数据的访问数据。
String 类型,因为 Redis 是分布式的独立服务,可以在多个应用之间共享
例如:分布式Session
int类型,incrby,利用原子性; 分库分表的场景,一次性拿一段
int类型,incr方法6.限流
例如:文章的阅读量、微博点赞数、允许一定的延迟,先写入Redis再定时同步到数据库
int类型,incr方法7.位统计
以访问者的ip和其他信息作为key,访问一次增加一次计数,超过次数则返回false
String类型的bitcount(1.6.6的bitmap数据结构介绍)
例如:在线用户统计,留存用户统计
支持按位与、按位或等等操作
计算出7天都在线的用户
String 或hash。所有String可以做的hash都可以做
- key:用户id;field:商品id;value:商品数量。
- +1:hincr
- -1:hdecr
- 删除:hdel
- 全选:hgetall
- 商品数:hlen
list,双向链表,直接作为timeline就好了。插入有序10.消息队列
List提供了两个阻塞的弹出操作:blpop/brpop,可以设置超时时间11.抽奖
- blpop:blpop key1 timeout 移除并获取列表的第一个元素,如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
- brpop:brpop key1 timeout 移除并获取列表的最后一个元素,如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
- 队列:先进先出:rpush blpop,左头右尾,右边进入队列,左边出队列
- 栈:先进后出:rpush brpop
自带一个随机获得值
假如微博ID是WB1001,用户ID是U300113.商品标签
用 [ like:WB1001 ] 来维护 WB1001 这条微博的所有点赞用户
- 点赞了这条微博:sadd like:WB1001 U3001
- 取消点赞:srem like:WB1001 U3001
- 是否点赞:sismember like:WB1001 U3001
- 点赞的所有用户:smembers like:WB1001
- 点赞数:scard like:WB1001
用 [ tags:i5001 ] 来维护商品所有的标签14.商品筛选
- sadd tags:i5001 画面清晰细腻
- sadd tags:i5001 真彩清晰显示屏
- sadd tags:i5001 流程至极
假如买 iPhone11
过滤商品,苹果的、ios的、屏幕在6.0-6.24之间的,屏幕材质是LCD屏幕
follow:关注 fans:粉丝
id 为1001 的新闻点击数加1
获取今天点击最多的15条
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |