Redis常见面试题--基础篇

问:你了解redis数据库吗?

答:redis数据库是一种非关系型数据库,它的数据存储采用key-value形式,整个数据库的加载都在内存当中,因此它的速度非常快。

问:你知道redis为什么这么快吗?

redis采用内存存储,因此读写速度非常快,没有IO开销。并且redis采用单线程+IO多路复用,在保证线程安全的情况下将速度提升到最佳。

问:我们为什么要使用redis?

答:redis可以作为缓存中间件,我们可以将数据库中频繁访问的数据存放到redis中,用户在访问的时候直接走redis返回,降低数据库的并发量,不仅提高数据库的安全同时提高了系统的性能。

问:redis可以用来干什么?

  • 做缓存中间件
  • 排行榜:redis中提供了有序集合的数据结构---sort set,可以实现排行榜。
  • 计数器:redis提供了incr命令来实现计数器功能,性能非常好,还不用去频繁操作数据库。
  • 分布式会话:集群模式下,在应用不多的情况下一般使用容器自带的session复制功能就能满足,当应用增多相对复杂的系统中,一般都会搭建以Redis等内存数据库为中心的session服务,session不再由容器管理,而是由session服务及内存数据库管理。
  • 分布式锁:在高并发环境下可以利用redis中提供的setnx来实现分布式锁,返回1说明获取锁成功。
  • 最新列表:Redis列表结构,LPUSH可以在列表头部插入一个内容ID作为关键字,LTRIM可用来限制列表的数量,这样列表永远为N个ID,无需查询最新的列表,直接根据ID去到对应的内容页即可。
  • 消息系统:Redis提供了发布/订阅及阻塞队列功能,能实现一个简单的消息队列系统。

问:redis的数据类型有哪些?

  • string
  • hash
  • list
  • set
  • soetset
  • bitmap
  • Hyperloglog:
  • Geospatial

下篇:redis常见面试题-CSDN博客

相关推荐
Decay__6 小时前
12_MySQL InnoDB 内存与锁调优 —— Buffer Pool、redo log、隔离级别与锁等待
运维·数据库·sql·mysql·架构
笃行3507 小时前
AI数据库的库内四层结构,KingbaseES 产品拆解
数据库
我是大猴子8 小时前
redis
数据库·redis·缓存
苏宸啊10 小时前
MySQL(一)
数据库·mysql
2603_9696948511 小时前
JDBC 基础学习笔记:API 核心原理解析与 CRUD 代码实操
数据库·笔记·mysql·学习方法·database·sql注入
这个DBA有点耶11 小时前
库内语义构建 vs 外挂向量库:业务语义缺失,才是RAG“胡说八道”的根源
数据库·mysql·aigc
kobe_OKOK_12 小时前
mysql 开启 binlog 日志
数据库·mysql
鸽芷咕13 小时前
KingbaseES 调参先看执行计划,参数是答案不是起点
数据库
码哥字节13 小时前
Redis 分布式锁的 7 个坑:从 setnx 到 Redlock
redis·分布式锁