ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

reids(3)

2022-08-19 23:00:36  阅读:175  来源: 互联网

标签:过期 reids redis master 内存 移除 节点


1.redis 过期策略:    1.定时过期   2.惰性过期   3.定期过期   2.redis内存淘汰策略: 全局的键空间选择性移除   noeviction:当内存不足以容纳新写入数据时,新写入操作会报错。   allkeys-lru:当内存不足以容纳新写入数据时,在键空间中,移除最近最少使用的key。(这个是最常用的)   allkeys-random:当内存不足以容纳新写入数据时,在键空间中,随机移除某个key。 设置过期时间的键空间选择性移除   volatile-lru:当内存不足以容纳新写入数据时,在设置了过期时间的键空间中,移除最近最少使用的key。   volatile-random:当内存不足以容纳新写入数据时,在设置了过期时间的键空间中,随机移除某个key。   volatile-ttl:当内存不足以容纳新写入数据时,在设置了过期时间的键空间中,有更早过期时间的key优先移除。   3.redis 数据存储格式:   RDB 阶段性持久化数据到 一个dump.rdb 文件   AOF 记录每一条redis命令 aof文件中   目前版本的redis,在项目中我们一般采用混合模式的方式进行设置。   涉及到主备 主从  一主多从,主主从情况进行数据同步时候: 全量复制: 主 生成RDB,同步给从 ,从写入自己的磁盘,再加载到内存,这个阶段生成的新的aof命令再同步过来 部分复制: 重连后, 根据offset 复制偏移量 进行复制 ,如果offset过旧,或者失效,进行全量复制。 exec、discard、watch、multi     4.redis 常见的几种问题: 缓存雪崩 :   存在大量key 同时失效 设置随机时间 缓存击穿:   缓存中无,数据库中有,大量并发情况下 设置热点数据 加互斥锁 缓存穿透:   数据库 缓存中都不存在该数据 布隆过滤器 -- 存在不一定存在,不存在一定不存在   5.redis集群选举原理 当slave从节点发现自己的master主节点边为FAIL状态,尝试进行Failover ,以期望成为新的master。 由于挂掉的master可能有多个slave, 从而存在多个salve竞争成为master节点的过程:   1.slave发现自己的master节点边为FAIL   2.将自己记录的集群的currentEpoch+1,并广播 FAILOVER_AUTH_REQUST 信息。   3.其他节点收到该信息,只有master相应,判断请求者合法性,并发送 FAILOVER_AUTH_ACK ,对每一个epoch只发送一次ack。   4.尝试failover的slave收集master返回的 failover_auth_ack.   5.slave收到 超过半数master的ack后,边成新的Master   解释:为什么至少三个主节点,如果两个,其中一个挂了,只剩下一个节点,不能选举成功   6.slave节点广播pong消息通知其他集群节点        

标签:过期,reids,redis,master,内存,移除,节点
来源: https://www.cnblogs.com/dhdnm/p/16603581.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有