redis学习(019 实战:达人探店)

黑马程序员Redis入门到实战教程,深度透析redis底层原理+redis分布式锁+企业解决方案+黑马点评实战项目

总时长 42:48:00 共175P

此文章包含第78p-第p87的内容 包含实战篇01-10的内容



达人探店功能

需求

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
这个表没有用户名称和图标 我们在对象类里加一下
在这里插入图片描述

在这里插入图片描述

原始写法
在这里插入图片描述

在这里插入图片描述

点赞功能

在这里插入图片描述

sql写法

在这里插入图片描述

这种写法没有判断点赞的是不是同一人
在这里插入图片描述

完善

在这里插入图片描述

在这里插入图片描述

给blog对象类里加一个是否点赞属性
在这里插入图片描述

这里后期会对数据库操作使用mq进行异步处理(这样性能会变好)
在这里插入图片描述

用sismember命令进行判断 是否存在在这个set集合里
在这里插入图片描述

BooleanUtil.isFalse()代表值 是false
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

点赞排行榜

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

使用SortedSet进行排序
在这里插入图片描述

通过查找元素分数进行判断是否存在
是否存在

跟据ZRANGE 命令进行查找前几的数据
在这里插入图片描述

改造代码为ZSet

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

防止空指针
在这里插入图片描述

在这里插入图片描述

用户未登录的状态判断一下
在这里插入图片描述

按自定义的id顺序进行排序
在这里插入图片描述

修改sql语句

在这里插入图片描述
改为

在这里插入图片描述

好友关注-关注和取关

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

好友关注-共同关注

使用redis的set数据结构进行交集查询
在这里插入图片描述

在这里插入图片描述

将关注用户加入redis
在这里插入图片描述
在这里插入图片描述
造两个关注数据
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

好友关注-关注推送

在这里插入图片描述

Feed流

在这里插入图片描述

Timeline 多用于朋友圈

在这里插入图片描述

智能排序 多用于首页推荐等

在这里插入图片描述

关注的人推送的消息我们使用Timeline

在这里插入图片描述

在这里插入图片描述

使用Timeline得到关注的人推送的消息

拉模式

每个人发送内容的时候都把其加上时间戳并且放到一个发件箱里, 粉丝读取的时候 从这些人的发件箱里拉取信息
在这里插入图片描述

然后按照时间排序
在这里插入图片描述
优点节省内存空间,缺点每次都需要重新拉取消息,然后做排序(耗时较久)

推模式

在这里插入图片描述

优点:延时很低,缺点:内存占用极大,而且如果粉丝上百万,每次发送都需要发出百万份信息,

推拉模式(读写混合模式)

在这里插入图片描述

这种模式就是 普通用户(粉丝少的)就使用推模式,大v(千万以上的粉丝)就使用拉模式,并且跟他互动多的活跃用户或者他的朋友就使用推模式
在这里插入图片描述

如果没有千万粉丝以上的都可以使用推模式
在这里插入图片描述

这里我们使用推模式

在这里插入图片描述

如果使用传统的分页模式 会产生分页混乱
在这里插入图片描述
滚动分页 记住上次查到的最后一个值 从他开始查
在这里插入图片描述

在这里插入图片描述

代码

在这里插入图片描述
推送成功
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

如果分数会重复的话,会出现这种情况
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
取值代码

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值