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博客

相关推荐
隔壁程序员老王12 分钟前
FlinkSQL的常用语言
数据库·sql·flink
麓殇⊙17 分钟前
Mybatis-缓存详解
java·缓存·mybatis
喜欢吃豆37 分钟前
prompts提示词经典模板
java·服务器·数据库·人工智能·prompt
AI Echoes1 小时前
LLaMA 常见面试题
数据库·人工智能·python·机器学习·chatgpt
菜就多练吧1 小时前
Redisson的红锁,分段锁,公平锁,联锁。。。。。。
redis
KEEPMA1 小时前
在线上定位1G日志文件中的异常信息时,我这样做合适吗
java·服务器·数据库
hxung2 小时前
MySQL与Oracle深度对比
数据库·mysql·oracle
gys98952 小时前
去除Mysql表中的空格、回车、换行符和特殊字符
数据库·mysql
SHIPKING3932 小时前
【LangChain少样本提示工程实战】FewShotPromptTemplate原理与应用解析——附运行代码
数据库·python·langchain·llm·fewshotprompt
今天不学习明天变拉吉2 小时前
分页查询列表每页1000条的优化
java·数据库·mysql·性能优化