Redis面试题及答案.docx
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
Redis 面试题及答案 Redis 是一个基于内存的高性能 key-value 数据库,它的特点是支持保存多种数据结构,并且性能非常出色,每秒可以处理超过 10 万次读写操作。下面是对 Redis 的详细介绍: Redis 的特点 Redis 是一个基于内存的高性能 key-value 数据库,它整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据 flush 到硬盘上进行保存。因为是纯内存操作,Redis 的性能非常出色,每秒可以处理超过 10 万次读写操作。 Redis 的优点 1. 高性能:Redis 的性能非常出色,每秒可以处理超过 10 万次读写操作。 2. 支持多种数据结构:Redis 支持保存多种数据结构,如 strings、lists、sets、sorted sets、hashes 等。 3. 可以用来实现很多有用的功能:Redis 可以用来实现很多有用的功能,如用他的 List 来做 FIFO 双向链表,实现一个轻量级的高性能消息队列服务,用他的 Set 可以做高性能的 tag 系统等等。 4. 可以对存入的 Key-Value 设置 expire 时间:Redis 也可以对存入的 Key-Value 设置 expire 时间,因此也可以被当作一个功能加强版的 memcached 来用。 Redis 的缺点 1. 数据库容量受到物理内存的限制:Redis 的主要缺点是数据库容量受到物理内存的限制,不能用作海量数据的高性能读写。 2. 只适合小数据量的高性能操作和运算:Redis 适合的场景主要局限在较小数据量的高性能操作和运算上。 Redis 的数据类型 Redis 通过 Key-Value 的单值不同类型来区分,以下是支持的类型: * Strings * Lists * Sets * Sorted Sets * Hashes 为什么 Redis 需要把所有数据放到内存中? Redis 为了达到最快的读写速度将数据都读到内存中,并通过异步的方式将数据写入磁盘。所以 Redis 具有快速和数据持久化的特征。如果不将数据放在内存中,磁盘 I/O 速度为严重影响 Redis 的性能。 Redis 的回收策略 Redis 的回收策略有五种: 1. volatile-lru:从已设置过期时间的数据集(server.db[i].expires)中挑选最近最少使用的数据淘汰 2. volatile-ttl:从已设置过期时间的数据集(server.db[i].expires)中挑选将要过期的数据淘汰 3. volatile-random:从已设置过期时间的数据集(server.db[i].expires)中任意选择数据淘汰 4. allkeys-lru:从数据集(server.db[i].dict)中挑选最近最少使用的数据淘汰 5. allkeys-random:从数据集(server.db[i].dict)中任意选择数据淘汰 6. no-enviction(驱逐):禁止驱逐数据 使用 Redis 的好处 1. 高性能:Redis 的性能非常出色,每秒可以处理超过 10 万次读写操作。 2. 灵活性强:Redis 支持保存多种数据结构,并且可以对存入的 Key-Value 设置 expire 时间。 3. 可以用来实现很多有用的功能:Redis 可以用来实现很多有用的功能,如用他的 List 来做 FIFO 双向链表,实现一个轻量级的高性能消息队列服务,用他的 Set 可以做高性能的 tag 系统等等。
剩余7页未读,继续阅读
- 粉丝: 106
- 资源: 1万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助