序言
恭喜恭喜恭喜你啊恭喜恭喜恭喜你,祝你们蛇年大吉,新年快乐,明天把视频的点赞的点赞功能以文章的方式叙述一下,点赞的功能是基于redis的set实现的,在讲设计图之前,我们先把redis基本的数据结构备考一下~
Redis数据结构为何使用redis?

在项目中,好多场景的并发量很大,如秒杀之类,若不使用redis缓存直接让其访问数据库,这么会对数据库引起很大的压力因而造成数据库崩了,因而引入redis做分布式缓存,redis基于显存效率高速率快,单线程没有多线程占领问题,aqs支持高,并发支撑大,而且提供了好多api便捷我们的开发。
redis的五种数据结构:点赞设计
大约了解完数据结构以后我们来看点赞的设计图:
可以看见我把点赞的功能放在了用户服务下,由于点赞这个业务,是以用户为中心出发的,用户对多个视频点赞,所以我归到了用户服务下点赞关注网站,用户从浏览器点赞以后,恳请先来到网段看是否携带了token,不携带则拦截出来返回后端,跳转到登陆页面,携带则路由到用户服务,通过token在redis中取出用户信息(前面忘画了…),接出来我们剖析点赞这个业务,它既要点赞数又要点赞状态点赞关注网站,所以在redis中须要有两个key,一个拿来储存状态,一个拿来储存点赞数,又由于点赞和取消点赞是互斥的两个状态,所以还须要一个key拿来记录取消的点赞视频,==回归题外话,我们通过redis的increment实现自增,假如没有这个key则从0开始递增,出来是用户点赞视频,一个用户会点赞好多视频,这种视频必将是不可以重复的,set集合在这儿刚好,可以防重复,存入到redis以后,由于我们有个互斥的取消点赞,所以须要看取消点赞(不喜欢)这个key上面是isMember当前视频的id,有的话则从set中remove掉。


