Redis常见面试题(三)

导读:本篇文章讲解 Redis常见面试题(三),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

目录

1、Redis String值最大存储多少?

2、Redis事务有什么用?

3、Redis事务相关的命令有哪几个?

4、Redis事务是原子性的吗?

5、Redis持久化有什么用?

6、Redis有哪几种持久化方式?

7、Redis持久化方式如何选择?

8、如何保证Redis中的数据都是热点数据?

9、Redis内存满了怎么办?

10、Redis怎么配置最大内存容量?


1、Redis String值最大存储多少?

A value can’t be bigger than 512 MB.

2、Redis事务有什么用?

Redis中的事务是一一个 单独的隔离操作,事务中的所有命令都会序列化、按顺序地执行,事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。

与关系数据库中的事务不同,Redis 中的事务只是一组命令集合,不能保证ACID所有特性。

3、Redis事务相关的命令有哪几个?

Redis事务相关的命令有: .

1)MULTI:用于开启事务

2)EXEC:用于执行事务中的所有命令

3)DISCARD:用于取消当前事务

4)WATCH:监视一个或多个KEY,决定事务是继续执行还是回滚

5)UNWATCH:取消WATCH的监视

4、Redis事务是原子性的吗?

  1. 1)Redis事务不是原子性的,且事务不支持回滚,但是Redis单个命令是原子性的。EXEC命令执行之前的错误(如:各种语法错误)
  2. 2)Redis会自动放弃事务,但调用EXEC命令执行失败后的错误(如:事务中的命令和处理了不支持的键),此时,事务中的其他命令仍会执行。

5、Redis持久化有什么用?

持久化就是把内存的数据写到磁盘中去,防止服务宕机了内存数据丢失。

6、Redis有哪几种持久化方式?

Redis提供两种持久化机制: RDB (默认)和AOF机制。

1)RDB,即: Redis DataBase,是Redis默认的持久化方式。

按照一定的时间将内存的数据以快照的形式保存到硬盘中,对应产生的数据文件为dump.rdb。

通过配置文件中的save参数来定义快照的周期。

2)AOF,即: Append Only File,则是将Redis执行的每次写命令记录到单独的日志文件中,当重

启Redis会重新将持久化的日志中文件恢复数据。

7、Redis持化方式如何选择?

一般来说, 应该同时使用RDB和AOF两种持久化功能。

当Redis重启的时候会优先载入AOF文件来恢复原始的数据,因为在通常情况下AOF文件保存的数据集要比RDB文件保存的数据集要完整。

8、如何保证Redis中的数据都是热点数据?

比如,现在MySQL数据库里有2000万数据,Redis中只能存20万数据,如何保证Redis中的数据都是热点数据呢?

这道面试题其实考察的是Redis的淘汰策略,淘汰策略见另外一道面试题: Redis 有哪些淘汰策略?

所以,首先计算一下20万数据大概占用的内存大小,然后设置一下Redis的最大内存容量大小,并将淘汰策略为volatile-lru 或者allkeys-lru,Redis会根据自身数据执行淘汰策略,即淘汰最近最少使用的数据,最后留下来的都是热数据。

9、Redis内存满了怎么办?

如果达到设置的上限,默认淘汰策略下,Redis 的写命令会返回错误信息,但是读命令还可以正常返回

一般要配置合适的淘汰机制,当Redis达到内存上限时会冲淘汰掉旧的数据。

10、Redis怎么配置最大内存容量?

修改Redis配置文件:

Redis常见面试题(三)

单位为:字节。

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

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/88057.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!