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

相关推荐
lzhdim40 分钟前
SQL 入门 15:SQL 事务:从 ACID 到四种常见的并发问题
数据库·sql
瀚高PG实验室1 小时前
瀚高企业版V9.1.1在pg_restore还原备份文件时提示extract函数语法问题
数据库·瀚高数据库
TDengine (老段)1 小时前
TDengine Tag 设计哲学与 Schema 变更机制
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
YOU OU2 小时前
Spring IoC&DI
java·数据库·spring
Muscleheng3 小时前
Navicat连接postgresql时出现‘datlastsysoid does not exist‘报错
数据库·postgresql
罗超驿4 小时前
18.事务的隔离性和隔离级别:MySQL面试高频考点全解析
数据库·mysql·面试
jran-4 小时前
Redis 命令
数据库·redis·缓存
小江的记录本5 小时前
【Java基础】Java 8-21新特性:JDK21 LTS:虚拟线程、模式匹配switch、结构化并发、序列集合(附《思维导图》+《面试高频考点清单》)
java·数据库·python·mysql·spring·面试·maven
June`5 小时前
多线程redis下如何解决aof重写和rdb持久化的数据一致性问题
数据库·redis·缓存
二宝哥5 小时前
离线安装maven
java·数据库·maven