Redis常见面试题

本文主要探讨Redis的数据类型,包括String、Hash、List、Set和Sorted Set,以及它们在缓存场景的应用。同时,分析了缓存雪崩、缓存穿透和缓存击穿问题及其解决方案,如Redis高可用、限流降级、空值缓存和布隆过滤器等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

redis都有哪些数据类型

String hash list set sorted set

String是最简单的类型,就是普通的set和get,做简单的KV缓存

hash类似map的一种结构,这个一般就是可以将将结构化的数据,比如一个对象给缓存在Redis里,然后每次读写缓存的时候,可以就操作hash里的某个字段

list有序列表,存储列表型的数据结构,类似粉丝列表,文章评论列表

set是无序集合,自动去重。直接基于set将系统里需要去重的数据扔进去就给去重

sorted set 是排序的set 去重但可以排序,写进去的时候给一个分数自动根据分数排序

缓存雪崩
对于系统A,假设每天高峰期每秒5000个请求,本来缓存在高峰期可以抗住每秒4000个请求,但是缓存机器意外发生了宕机,缓存挂了,请求全部落入数据库,必然扛不住报警。此时,如果没采取什么方案处理故障,数据库会被新的流量打死。

file

解决方案

Redis高可用 主从+哨兵 本地缓存+限流降级 Redis持久化

缓存穿透

对于系统A假设一秒5000个请求,其中4000个请求是黑客发出的恶意攻击。
黑客发出的4000个攻击,缓存中查不到去库里查也查不到数据库id从1开始的,黑客发过来的id是负数,缓存中不会有请求视缓存于无物,

回答: Redis见面试题包括但不限于以下几个方面: 1. Redis的特点和优势:Redis是一个基于内存的NoSQL数据库,支持多种数据结构和丰富的操作,具有高性能、高并发、持久化、主从同步等特点。 2. Redis的数据结构:Redis支持多种数据结构,包括字符串(string)、列表(list)、集合(set)、有序集合(sorted set)和哈希(hash),每种数据结构都有相应的操作方法。 3. Redis的持久化方式:Redis有两种持久化方式,分别是RDB(Redis Database)和AOF(Append Only File)。RDB是将内存中的数据定期保存到磁盘上,而AOF是将每个写操作追加到文件末尾。 4. Redis的使用场景:Redis可以用于缓存、会话管理、计数器、排行榜、消息队列等多种场景。它的高性能和丰富的数据结构使得它在处理大量并发请求和快速读写的场景下表现出色。 5. Redis的并发访问:Redis采用单进程单线程模式,通过队列模式将并发访问变为串行访问。在Jedis客户端对Redis进行并发访问时可能会出现连接超时、数据转换错误、阻塞等问题,需要注意处理这些并发访问的情况。 综上所述,Redis是一个功能强大的基于内存的NoSQL数据库,具有多种数据结构和丰富的操作方法,适用于多种场景。在面试中,了解Redis的特点、数据结构、持久化方式、使用场景和并发访问等方面的知识是非重要的。 #### 引用[.reference_title] - *1* *2* [redis面试题总结(附答案)](https://blog.youkuaiyun.com/guorui_java/article/details/117194603)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [精选 21道 Redis面试题!收藏一波 !](https://blog.youkuaiyun.com/w915209092/article/details/126035419)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值