Redis面试题详解:优缺点、应用场景和高性能特点
版权申诉
36 浏览量
更新于2024-06-26
收藏 1.65MB PDF 举报
Redis面试题70道
**概述**
Redis是一款开源的高性能key-value非关系缓存数据库,使用C语言编写,支持多种数据类型,包括string、list、set、zset和hash等。Redis的数据都基于缓存的,所以读写速度非常快,每秒可以处理超过10万次读写操作,是已知性能最快的Key-ValueDB。Redis也可以实现数据写入磁盘中,保证了数据的安全不丢失,而且Redis的操作是原子性的。
**Redis的优点**
1. 读写性能优异:Redis能读的速度是110000次/s,写的速度是81000次/s。
2. 支持数据持久化:支持AOF和RDB两种持久化方式。
3. 支持事务:Redis的所有操作都是原子性的,同时Redis还支持对几个操作合并后的原子性执行。
4. 数据结构丰富:除了支持string类型的value外还支持hash、set、zset、list等数据结构。
5. 支持主从复制:主机会自动将数据同步到从机,可以进行读写分离。
**Redis的缺点**
1. 数据库容量受到物理内存的限制,不能用作海量数据的高性能读写。
2. Redis不具备自动容错和恢复功能,主机从机的宕机都会导致前端部分读写请求失败,需要等待机器重启或者手动切换前端的IP才能恢复。
3. 主机宕机,宕机前有部分数据未能及时同步到从机,切换IP后还会引入数据不一致的问题,降低了系统的可用性。
4. Redis较难支持在线扩容,在集群容量达到上限时在线扩容会变得很复杂。
**使用Redis的好处**
1. 速度快:因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都很低。
2. 支持丰富数据类型:支持string、list、set、sortedset、hash等多种数据类型。
3. 支持事务:操作都是原子性,所谓的原子性就是对数据的更改要么全部执行,要么全部不执行。
4. 丰富的特性:可用于缓存,消息,按key设置过期时间,过期后将会自动删除。
**为什么要用Redis**
Redis可以满足高性能和高并发的需求,主要体现在以下两个方面:
1. 高性能:假如用户第一次访问数据库中的某些数据,由于Redis可以将数据存储在内存中,从而大大提高了读写速度。
2. 高并发:Redis可以处理高并发的读写请求,满足了高并发的需求。
2020-07-10 上传
2023-12-26 上传
2023-04-08 上传
2024-03-06 上传
2020-07-09 上传
2022-07-14 上传
2019-09-18 上传
2024-03-06 上传
小鸭文库
- 粉丝: 182
- 资源: 5900
最新资源
- JDK 17 Linux版本压缩包解压与安装指南
- C++/Qt飞行模拟器教员控制台系统源码发布
- TensorFlow深度学习实践:CNN在MNIST数据集上的应用
- 鸿蒙驱动HCIA资料整理-培训教材与开发者指南
- 凯撒Java版SaaS OA协同办公软件v2.0特性解析
- AutoCAD二次开发中文指南下载 - C#编程深入解析
- C语言冒泡排序算法实现详解
- Pointofix截屏:轻松实现高效截图体验
- Matlab实现SVM数据分类与预测教程
- 基于JSP+SQL的网站流量统计管理系统设计与实现
- C语言实现删除字符中重复项的方法与技巧
- e-sqlcipher.dll动态链接库的作用与应用
- 浙江工业大学自考网站开发与继续教育官网模板设计
- STM32 103C8T6 OLED 显示程序实现指南
- 高效压缩技术:删除重复字符压缩包
- JSP+SQL智能交通管理系统:违章处理与交通效率提升