redis原理
文章平均质量分 93
sword to coding
大学生一枚,致力于记录代码生活的每一滴
展开
-
docker搭建主从架构和哨兵模式
下文介绍使用docker来创建redis的主从架构和哨兵模式。原创 2022-10-10 21:01:25 · 968 阅读 · 0 评论 -
(12)Redis中集合应用场景
集合常见的集合统计模式聚会统计:多个集合的聚合结果包括:统计多个集合的共有元素(交集统计);把两个集合相比,统计其中一个集合独有的元素(差集统计);统计多个集合的所有元素(并集统计)场景:统计某网站每天的新增用户数和第二天的留存用户数每天新增用户首先定义一个set集合用于保存所有登陆过的用户的集合另外定义一个指定日期当天登录的用户这样统计新增用户数可以使用差集user:id - user🆔日期 就可以得到指定日期新增的用户了怎么记录第二天留存用户数?此时我们记录两个集合user🆔原创 2022-04-15 09:37:15 · 781 阅读 · 0 评论 -
(11)Redis之海量数据下String结构与存储的缺点
文章目录一.背景二.String的底层数据结构1.String怎么进行数据保存的:RedisObjectint编码embstr编码raw编码jemalloc分配2.String缺点三.解决String占用大量内存的方法1.压缩列表 ziplist2.需要解决的问题3.二级编码4.注意关于压缩列表升级为哈希表问题一.背景当我们要存储“单值”数据时(例如0123456789:0987654321,可以看作一串id对应着另一串id)这样的数据,我们第一个想到的就是是使用String类型来进行存储。这样我们就原创 2022-04-13 21:50:41 · 1238 阅读 · 0 评论 -
(九)redis如何存储海量数据
文章目录一.引入二.切片集群1.简介2.数据存储方案:scale up和scale out`纵向扩展横向扩展3.两种方式优缺点对比:4.从横向扩展转换为纵向扩展就需要解决一下问题:三.数据切片与实例的对应分布关系Redis Cluster 是切片集群的具体实现具体映射过程什么情况下不均分哈希槽位数量四.客户端如何定位数据?五.重定向机制MOVED与ASK不同点六.总结一.引入给出一个场景,要求使用Redis保存 5000 万个键值对,每个键值对大约是 512B,经计算一共需要花费约25G内存。通常我们想原创 2022-04-12 22:33:51 · 3868 阅读 · 0 评论 -
(八)哨兵机制的集群模式
本文主要知识点:基于 pub/sub 机制的哨兵集群组成过程;基于 INFO 命令的从库列表,这可以帮助哨兵和从库建立连接;基于哨兵自身的 pub/sub 功能,这实现了客户端和哨兵之间的事件通知。文章目录哨兵集群基于 pub/sub 机制的哨兵集群模式频道哨兵通过INFO命令获取从库信息基于 pub/sub 机制的客户端事件通知客户端如何订阅哨兵?Leader选取Leader选取注意哨兵集群在哨兵模式下建立多个哨兵,一般建立三个或三个以上构成哨兵集群设置哨兵服务的主库:sentinel原创 2022-04-10 21:34:27 · 2735 阅读 · 0 评论 -
(七)拿下redis哨兵模式
文章目录一.为什么需要哨兵模式二.哨兵模式的主要任务监控选主通知三.实现流程主观下线与客观下线选主流程一定的筛选条件一定的规则第一轮:优先级最高的从库得分高第二轮:和旧主库同步程度最接近的从库得分高第三轮:ID号小的从库得分高一.为什么需要哨兵模式在redis的主从模式中,有多个从服务器,但是只有一个主服务器,从服务器主要给从客户端提供读数据的操作,主服务器负责实现数据更新,并将更新的数据通知到与它相连的从服务器。主服务器只有一个,那么当主服务器宕机后,该怎么办呢?这种情况下基本上redis集群的数据更原创 2022-04-10 17:00:46 · 925 阅读 · 0 评论