1,非关系型数据库reidsRedis的外围由一个键、值映射的字典构成。与其他非关系型数据库主要不同在于:Redis中值的类型不仅限于字符串,还支持字符串列表,无序不重复的字符串集合,有序不重复的字符串集合,键、值都为字符串的哈希表redis提供五种数据类型:string,hash,list,set及zset(sorted set) string(字符串);list(双向链表);dict(hash
Redis实现互相关注功能在实现社交网络功能中,实现互相关注是必不可少的。在这里,我们将使用Redis来实现这个功能,前端使用Vue框架实现。功能要求我们需要实现以下几个功能:用户能够关注其他用户用户能够取消关注其他用户用户能够查看自己关注的人和被谁关注在用户的主页上,能够显示关注和被关注的数量Redis存储结构设计我们使用Redis的set数据结构来存储用户关注的人和被关注的人。具体来说,每个用
目录一、常用的五大数据类型:Redis键(key)二、Redis字符串(String):简介:常用命令:原子性:数据结构:三、Redis列表(List):简介:常用命令:数据结构:四、Redis集合(Set)简介:常用命令:数据结构:五、Redis哈希(Hash)简介:分析案例:常用命令:数据结构:六、Redis有序集合Zset(sorted set):简介:常用命令:数据结构:zset底层使用了
# 实现Redis关注模型粉丝列表 > 本文将引导你理解并实现 Redis 关注模型中的粉丝列表功能。我们将使用 Redis 数据库,并通过一系列的步骤来完成这个任务。 ## 概述 在实现 Redis 关注模型的粉丝列表之前,我们需要先了解什么是 Redis 关注模型。在一个关注模型中,用户可以关注其他用户,同时也可以被其他用户关注。我们需要实现一个功能,即根据用户的关注关系,获取某个用户的
原创 9月前
53阅读
点赞功能业务说明1、每个用户只能点一次赞,再次点击时取消点赞2、在Blog属性中增加isLike字段,用于判断当前用户是否点赞3、isLike的值从Redis中获取,可以用redis自带的持久化机制,也可以在数据库中设计表,定时持久化到数据库4、点赞功能使用的是redis的set数据结构,用set来判断当前用户是否已经存在Blog的点赞集合中5、redis中设计的具体数据结构为:key-set
转载 2023-06-30 21:47:35
198阅读
本文使用hash类型存储点赞记录及统计总数,点赞记录使用博客id+用户id作为key,存储value值为点赞或者取消点赞状态。点赞或取消点赞点赞或取消点赞的方法,不会删除redis的记录,只会去更新对应的点赞状态。点赞或取消点赞需要对点赞总数进行数量+1或者-1的操作,这个适合需要去判断总量key是否在缓存中存在,如果没有需要去数据库获取再刷进缓存里面。@Override public S
转载 2023-05-25 10:50:28
38阅读
点赞功能是很多平台都会提供的一个功能,那么,我们要如何实现点赞和取消点赞呢?这篇文章总结了我在项目中实现点赞的方法。缓存 vs 数据库?首先我们要考虑的是数据要放到哪里,很多时候我们都会把数据放到数据库(如 MySQL),由于关系型数据库的稳定性,大部分场景下我们也都会使用关系数据库来存储数据。不过,在一些特殊的场景下,传统的关系型数据库很可能无法满足我们的需求。比如,在访问量较大的情况下,数据库
## Redis 关注列表和粉丝列表 在很多社交网络应用中,都会涉及到用户之间的关注关系。比如微博、Twitter等平台,用户可以关注其他用户,同时也可以被其他用户关注。为了实现这种功能,我们可以使用 Redis 数据库来存储用户的关注列表和粉丝列表。 ### 什么是 RedisRedis 是一个开源的内存数据库,它支持多种数据结构,如字符串、哈希、列表、集合等。Redis 的特点是速度
场景:户扫描微信公众号的二维码,关注后自动登录网站,若已关注则直接登录。逻辑:系统生成带参数的临时二维码:参数 scene_str 自定义为唯一值(可以是uuid),临时二维码的生成方式参照官方接口的开发文档用户使用微信扫描该二维码,关注后微信服务器会将关注事件的响应数据返回给我们的应用服务器:微信通过我们在公众号配置的“服务器地址(URL)”,将响应数据返回给我们的应用服务器,响应数据包括 参数
转载 2023-07-24 15:24:44
59阅读
关键是User之间的关系 , 是博主和粉丝之间的联系 , 数据库中有一张表 , tb_follow表来表示关注 : 在表中添加字段 ,取关 : 将表中字段删除@Resource private StringRedisTemplate stringRedisTemplate; @Override public Result follow(Long followUserId,
1. 好友关注在探店图文的详情页面中,可以关注发布笔记的作者:进到探店笔记详情页,会发出两个请求,1是判断是否已经关注,2是尝试关注用户的请求。 关注是User之间的关系,是博主与粉丝的关系,数据库中有一张tb_follow表来标示:其中userId是当前登录的用户id,follow_user_id是被关注的用户id实现对应接口:1. 判断是否关注:Controller层:@GetMap
关注是User之间的关系,是博主与粉丝的关系,通过数据库中一张名为tb_follow表来维护我们这里主要需要完成关注用户和判断当前用户是否关注指定用户的两个接口。具体代码编写如下:在FollowController中/** * 关注用户 * @param id * @param isFollow * @return */ @PutMapping("/{id}/{isFollow
目录前言示例1.原生Java2.jdk-Observable&Observer2.spring-Observable&Observer总结前言观察者模式对于我们来说,真是再简单不过了。无外乎两个操作,观察者订阅自己关心的主题和主题有数据变化后通知观察者们。示例1.原生Java首先,需要定义主题,每个主题需要持有观察者列表的引用,用于在数据变更的时候通知各个观察者:public cl
文章目录前言一、需求二、用例三、建模四、概要设计1. 文章发布接口post_article()3. 用户投票接口article_vote(user, article)2. 文章详情接口get_article(article)3. 文章投票用户列表接口get_article_vote_users(article_id)4. 所有文章列表接口get_articles()5. 创建和删除分组接口add
最近项目要涉及到粉丝关注问题,权衡再三还是使用Redis实现比较方便,使用Redis的有序集合可以做到根据关注的时间有序的取出列表,假设我的ID是me,别人的ID是other。 1. 添加关注 添加关注分为两步:1、将对方id添加到自己的关注列表中;Redis::ZADD("me:follow", time(), other)2、将自己的id添加到对方的粉丝列表中:Redis:
转载 2023-07-10 10:20:55
86阅读
Redis订阅发布先聊什么是发布订阅模型你知道的订阅发布是如何实现的?其实订阅发布模型说起来是相对简单的:存在三个角色。消息发布者:给相应频道发送消息的人频道:相当于发送消息的频道消息订阅者:订阅频道接收消息的人消息发布者发布消息到频道(Redis中频道的实现其实是一个字典,字典的键是频道名,字典的值是一个个消息订阅者这里不细刨底层实现了),然后消息订阅者就能从频道中拿到对应的消息(消息订阅者能知
# Redis 关注 ## 什么是 RedisRedis(Remote Dictionary Server)是一个开源的、基于内存的数据结构存储系统。它支持多种数据结构,如字符串(String)、哈希(Hash)、列表(List)、集合(Set)、有序集合(Sorted Set)等,并提供了丰富的操作命令。Redis 主要用于缓存、消息队列、任务队列等场景,以及实时统计分析、排行榜等应用。
原创 8月前
22阅读
粉丝表:fans:myUidoUid1oUid2oUid3关注表:follow:myUidoUid1oUid2oUid3点击关注某用户,若未关注,则将其id写入对应的follow:myUid(这里的myUid是关注者的id)集合里。同时,将我的id写到我关注的用户的fans:oUid(这里的oUid是被关注者的id)集合里//判断该用户是否被我关注$redis=newRedis();$redis-
原创 2018-05-09 13:57:52
4726阅读
2点赞
以前没有发现Redis有多么的重要,直到最近面试才觉得,把以前的材料翻出来做了简单总结1. 关于关系型数据库和 nosql 数据库(键值对存储) 关系型数据库是基于关系表的数据库,最终会将数据持久化到磁盘上,而 nosql 数据库是基于特殊的结构,并将数据存储到内存的数据库。从性能上而言,nosql 数据库要优于关系型数据库,从安全性上而言关系型数据库要优于 nosql 数据库,所以在实际开发中一
Redis的三种集群方式概述1、主从复制原理从服务器连接主服务器,发送SYNC(同步)命令;主服务器接收到SYNC命名后,开始执行BGSAVE命令生成RDB文件并使用缓冲区记录此后执行的所有写命令;主服务器BGSAVE执行完后,向所有从服务器发送快照文件,并在发送期间继续记录被执行的写命令;从服务器收到快照文件后丢弃所有旧数据,载入收到的快照;主服务器快照发送完毕后开始向从服务器发送缓冲区中的写命
  • 1
  • 2
  • 3
  • 4
  • 5