当前位置:   article > 正文

Redis 200道面试题及答案 【2022年最新版】_redis面试题

redis面试题

Redis面试题及答案 【最新版】Redis面试题大全,发现网上很多Redis面试题及答案整理都没有答案,所以花了很长时间搜集,本套Redis面试题大全

如果不背 Redis面试题的答案,肯定面试会挂!

这套Redis面试题大全,希望对大家有帮助哈~

博主已将以下这些面试题整理成了一个面试手册,是PDF版的

1、Redis持久化策略选择

1、 如果Redis中的数据完全丢弃也没有关系(如Redis完全用作DB层数据的cache),那么无论是单机,还是主从架构,都可以不进行任何持久化。

2、 在单机环境下(对于个人开发者,这种情况可能比较常见),如果可以接受十几分钟或更多的数据丢失,选择RDB对Redis的性能更加有利;如果只能接受秒级别的数据丢失,应该选择AOF。

3、 但在多数情况下,我们都会配置主从环境,slave的存在既可以实现数据的热备,也可以进行读写分离分担Redis读请求,以及在master宕掉后继续提供服务。

2、Redis常见性能问题和解决方案:

1、 Master最好不要写内存快照,如果Master写内存快照,save命令调度rdbSave函数,会阻塞主线程的工作,当快照比较大时对性能影响是非常大的,会间断性暂停服务

2、 如果数据比较重要,某个Slave开启AOF备份数据,策略设置为每秒同步一

3、 为了主从复制的速度和连接的稳定性,Master和Slave最好在同一个局域网

4、 尽量避免在压力很大的主库上增加从

5、 主从复制不要用图状结构,用单向链表结构更为稳定,即:Master <- Slave1 <- Slave2 <- Slave3…这样的结构方便解决单点故障问题,实现Slave对Master的替换。如果Master挂了,可以立刻启用Slave1做Master,其他不变。

3、Redis修改配置不重启Redis会实时生效吗?

针对运行实例,有许多配置选项可以通过 CONFIG SET 命令进行修改,而无需执行任何形式的重启。 从 Redis 2.2 开始,可以从 AOF 切换到 RDB 的快照持久性或其他方式而不需要重启 Redis。检索 ‘CONFIG GET *’ 命令获取更多信息。

但偶尔重新启动是必须的,如为升级 Redis 程序到新的版本,或者当你需要修改某些目前 CONFIG 命令还不支持的配置参数的时候。

4、Redis过期键的删除策略?

1、 定时删除:在设置键的过期时间的同时,创建一个定时器timer)、让定时器在键的过期时间来临时,立即执行对键的删除操作。

2、 惰性删除:放任键过期不管,但是每次从键空间中获取键时,都检查取得的键是否过期,如果过期的话,就删除该键;如果没有过期,就返回该键。

3、 定期删除:每隔一段时间程序就对数据库进行一次检查,删除里面的过期键。至于要删除多少过期键,以及要检查多少个数据库,则由算法决定。

5、Redis与Memcached相比有哪些优势?

1、 Memcached所有的值均是简单的字符串,Redis作为其替代者,支持更为丰富的数据类型

2、 Redis的速度比Memcached快很多Redis的速度比Memcached快很多

3、 Redis可以持久化其数据Redis可以持久化其数据

6、Redis持久化的几种方式

1、 快照(snapshots)

缺省情况情况下,Redis把数据快照存放在磁盘上的二进制文件中,文件名为dump.rdb。你可以配置Redis的持久化策略,例如数据集中每N秒钟有超过M次更新,就将数据写入磁盘;或者你可以手工调用命令SAVE或BGSAVE。

工作原理

  1. Redis forks.
  2. 子进程开始将数据写到临时RDB文件中。
  3. 当子进程完成写RDB文件,用新文件替换老文件。
  4. 这种方式可以使Redis使用copy-on-write技术。

2、 AOF

快照模式并不十分健壮,当系统停止,或者无意中Redis被kill掉,最后写入Redis的数据就会丢失。

这对某些应用也许不是大问题,但对于要求高可靠性的应用来说,Redis就不是一个合适的选择。Append-only文件模式是另一种选择。你可以在配置文件中打开AOF模式

3、 虚拟内存方式

当你的key很小而value很大时,使用VM的效果会比较好.因为这样节约的内存比较大.

当你的key不小时,可以考虑使用一些非常方法将很大的key变成很大的value,比如你可以考虑将key,value组合成一个新的value.

vm-max-threads这个参数,可以设置访问swap文件的线程数,设置最好不要超过机器的核数,如果设置为0,那么所有对swap文件的操作都是串行的.可能会造成比较长时间的延迟

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/160207
推荐阅读
相关标签
  

闽ICP备14008679号