首页 > 数据库 >Redis相关面试题

Redis相关面试题

时间:2024-10-19 15:19:52浏览次数:11  
标签:面试题 单线程 Redis 线程 内存 操作 相关 CPU

Redis 为什么快?
1.纯内存KV操作
Redis 的操作都是基于内存的,CPU不是 Redis性能瓶颈,,Redis的瓶颈是机器内存和网
络带宽。
在计算机的世界中,CPU的速度是远大于内存的速度的,同时内存的速度也是远大于硬
盘的速度。redis的操作都是基于内存的,绝大部分请求是纯粹的内存操作,非常迅速。
2.单线程操作
使用单线程可以省去多线程时CPU上下文会切换的时间,也不用去考虑各种锁的问题,
不存在加锁释放锁操作,没有死锁问题导致的性能消耗。对于内存系统来说,多次读写都是
在一个CPU上,没有上下文切换效率就是最高的!既然单线程容易实现,而且 CPU 不会成
为瓶颈,那就顺理成章的采用单线程的方案了
Redis 单线程指的是网络请求模块使用了一个线程,即一个线程处理所有网络请求,其
他模块该使用多线程,仍会使用了多个线程。
3.I/O 多路复用
为什么 Redis 中要使用 I/O 多路复用这种技术呢?
首先,Redis 是跑在单线程中的,所有的操作都是按照顺序线性执行的,但是由于读写
操作等待用户输入或输出都是阻塞的,所以 I/O 操作在一般情况下往往往不能直接返回,这
会导致某一文件的 I/O 阻塞导致整个进程无法对其它客户提供服务,而 I/O 多路复用就是
为了解决这个问题而出现的
4.Reactor 设计模式
Redis基于Reactor模式开发了自己的网络事件处理器,称之为文件事件处理器(FileEvent
Hanlder)。
Redis 合适的应用场景?
1、会话缓存(Ses

标签:面试题,单线程,Redis,线程,内存,操作,相关,CPU
From: https://blog.csdn.net/huanghm88/article/details/143058643

相关文章

  • 码城|第2期一分钟吃透Java面试题
     ......
  • Java最全面试题->Java基础面试题->JavaWeb面试题->Cookie/Session面试题
    Cookie/Session下边是我自己整理的面试题,基本已经很全面了,想要的可以私信我,我会不定期去更新思维导图哪里不会点哪里什么是Cookie?HTTPCookie(也叫WebCookie或浏览器Cookie)是服务器发送到用户浏览器并保存在本地的一小块数据,它会在浏览器下次向同一服务器再发起请求......
  • 记录Redis+MQ延迟双删保证缓存一致性
    场景描述在博客系统中,用户可以给博客点赞或者评论,这些操作需要更新数据库中的数据,同时要保证缓存中的博客信息与数据库保持一致。为了提高性能,博客数据会存放在Redis缓存中。但当有大量用户同事点赞或是评论时,缓存和数据库中的数据可能出现不一致。何谓延迟双删?延迟双删......
  • Redis架构演进之单机版Redis和数据持久化
    单机版Redis假设现在有一个业务应用,需要引入Redis来提高应用的性能,此时可以选择部署一个单机版的Redis来使用业务应用可以把Redis当作缓存来使用,从MySQL里查询数据,然后写入Redis中,之后业务应用再从Redis里读取数据,因为Redis的数据都是存储在内存里的,所以整体的速度很快。......
  • IO流 - File()文件的相关知识
    File文件File【文件】:是计算机中所有文件的抽象表示,将来File对象目标可能存在,也可能不存在。构造方法:publicFile(Stringpathname)publicFile(Stringparent,Stringchild)publicFile(Fileparent,Stringchild)路径:......
  • 面试题速刷 - 实战会碰到的一些问题
    页面如何进行首屏优化?路由懒加载服务端渲染SSR只获取HTML就可以,里面包含data。APP预取(啥东西)APP结合H5、结合JSbridge分页图片懒加载lazyloadHybrid总结:后端一次性返回10w条数据,你会如何渲染?本身后端设计方案的设计就不合理!非要的话......自定义中间......
  • Redis 集群:高效缓存与数据存储的利器
    在当今的互联网时代,数据的存储和处理速度至关重要。Redis作为一种高性能的内存数据库,广泛应用于各种场景。而Redis集群则进一步提升了Redis的可用性、扩展性和性能。本文将为你详细介绍Redis集群的简介以及三种模式。一、Redis集群简介Redis集群是由多个Redis......
  • QT/c++相关记录
     QT的大部分容器类(如QString、QVector等)都是使用隐式共享(implicitsharing)技术,这是通过写时复制(copy-on-write,COW)实现的优化模式。理解这一点的关键在于,Qt的容器类需要在对象拷贝时高效处理数据,而隐式共享则允许在栈上操作容器的同时,在需要时共享内部数据的堆上存储。......
  • 安全帽AI检测算法在工业安全领域的全面解析及开源代码及相关项目
    在各类施工现场,安全帽的佩戴是保障工人生命安全的重要措施。为了确保工人正确佩戴安全帽,安全帽检测算法发挥着关键作用。而在实际应用中,结合AI智能分析网关V4与EasyCVR视频汇聚智能分析平台,更是能将安全帽检测的效果发挥到极致。例如,在某大型建筑工地,通过在施工现场安装多个摄......
  • 安全帽AI检测算法在工业安全领域的全面解析及开源代码及相关项目
    在各类施工现场,安全帽的佩戴是保障工人生命安全的重要措施。为了确保工人正确佩戴安全帽,安全帽检测算法发挥着关键作用。而在实际应用中,结合AI智能分析网关V4与EasyCVR视频汇聚智能分析平台,更是能将安全帽检测的效果发挥到极致。例如,在某大型建筑工地,通过在施工现场安装多个......