微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Redis

Redis的应用场景?

 

2. Redis持久化数据和缓存怎么做扩容?

  如果Redis只做缓存使用时,可以使用一致性hash实现动态扩缩容.

3.Redis的过期键的删除策略?

  (1)定期删除,每个设置过期时间的key,都需要设置一个定时器,当key过期是立即删除.对内存很友好,但是会大量消耗cpu处理过期key,影响缓存的响应时间和吞吐量(空间换时间)

  (2)惰性删除 当访问某key,判断是否过期,过期就再删除.该策略对内存不友好,当大片key过期后没及时删除,缺占用了大量内存

  (3)定时删除 多长时间内删除过期数据

4,Redis key的过期时间和永久有效分别怎么设置?

  expire和persist命令

5,MysqL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据?

  Redis数据集大小升到一定数量时,就会实行淘汰策略.

6,Redis的内存淘汰策略有哪些?

  expire 1,淘汰快过期的. 2淘汰最近使用最少的.  4 不淘汰 5,随机移除某个key

  内存淘汰策略不影响过期key的处理,淘汰策略用于内存不足时,需要申请额外的数据.过期删除策略由于处理过期数据.

7,哨兵模式

  集群监控 :sentinel负责监控master和slave服务是否正常运行

  消息通知 :如何某个Redis发生故障,sentinel会发送消息,作为警报通知管理员

  故障转移 : 当master 的node发生故障时,会转移到slave node上   

  配置中心 :当master发生故障,会通知client新的master地址

8,redis 主从复制的核心原理

  1,当主库和从库建立连接后,主库后台生成RDB文件

  2,此时新的写命名将缓存到内存中

  3,当RDB文件完成后,master将RDB文件和所有缓存的写命令发送给slave

  4,slave接受到RDB文件,将文件保存到本地磁盘,再从磁盘中读取数据,并执行收到的缓存命令

  5,之后,master收到写命令就会将命令发送给slaveRedis中,从而保证了数据一致性

  缺点,所有的slave数据同步和复制都是master节点操作的,会造成master节点压力太大,解决方案使用从从复制.

Redis的问题

9,Redis实现分布式锁?

  redis是单进程单线程模式的,采用列队模式将并发访问变成串行访问,Redis可以使用setNX命令实现分布式锁

  当且key不存在,将key的值设成value,若给定的key存在,setNX不做任何动作

  SETNX是(set if not exists)如果不存在,则set的简写.

  返回值,设置成功返回1,失败返回0

10,如何解决 Redis 的并发竞争 Key 问题?

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐