Redis常见面试问题

1、Redis分布式锁是怎么实现的

Redis实现分布式锁的7种方案-CSDN博客

2、Redis分布式锁会有什么问题

Redis实现分布式锁的7种方案-CSDN博客

3、Redis有哪些操作时间复杂度不是O(1)?

Redis有一些操作的时间复杂度不是O(1),例如,删除List、Hash、Set或ZSet类型的key,其复杂度为O(N),N代表元素个数。这意味着如果要删除的key包含大量元素,那么该操作所需的时间将与元素数量成正比。

4、如何用Redis实现消息队列?

1、基于List的lpush(生产消息)和rpop(消费消息),利用先进先出的特性。这是将一个值推入列表的命令。例如,你可以使用LPUSH queue_name item将项目放入队列。

2、Streams:为了实现消息队列专门在redis5版本中定义的一种数据结构。

BRPOP/BLPOP/LPOP/RPOP: 这是从列表中删除并返回一个元素的命令。例如,你可以使用BRPOP queue_name timeout从队列取出一个项目。如果队列为空,这个命令将等待指定的超时时间。

相关推荐
kyriewen5 小时前
别再 console.log 了:5 个 Chrome DevTools 调试技巧,用过就回不去了
前端·javascript·面试
GuWenyue8 小时前
排序效率低?5分钟吃透快速排序,性能飙升至O(nlogn)
前端·javascript·面试
ricardo19739 小时前
React 渲染优化:memo / useMemo / useCallback 的正确姿势与并发模式实战
前端·面试
常铭9 小时前
【Java基础】01-HashMap的底层原理
后端·面试
千寻girling12 小时前
一份不可多得的《微服务》教程
后端·面试·github
Nturmoils12 小时前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
swipe13 小时前
从 0 到 1 理解 React 虚拟列表:定高、不定高与 Canvas 版本完整拆解
前端·javascript·面试
Ruihong16 小时前
🎉 VuReact 1.9.0 发布,支持 Vue 3.4 defineModel 编译到 React
vue.js·react.js·面试
假如让我当三天老蒯16 小时前
React基础、进阶(学习用)
前端·react.js·面试
渣波16 小时前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端