Redis进阶(一)——为什么redis这么快

本文探讨了Redis为何如此快速,主要聚焦于其纯内存访问、简单数据结构、早期的单线程模型以及IO多路复用技术。Redis通过将数据存储在内存中,使用高效的数据结构和避免线程竞争来提升性能。尽管6.0版本引入了多线程,但在早期版本中,单线程模型配合IO多路复用技术,确保了在空闲时的有效资源利用,降低了不必要的操作。
摘要由CSDN通过智能技术生成

在尝试了redis的相关操作,接下来我们需要进一步去了解redis的特性及其原理。

如标题所言,为什么redis这么快?这是个面试常被问到的问题,虽然能靠自己的理解去回答,但还是记录一下。

1、纯内存访问

redis把所有数据放在内存中,内存响应的速度非常快。数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)

2、数据结构简单

对数据操作简单,Redis中的数据结构是专门进行设计的;

3、采用单线程

redis采用多单线程,避免了线程切换和竞态产生的消耗,同时不存在加锁释放锁操作,因为不会出现因为死锁而导致性能消耗
在这里插入图片描述
注意:目前我是用的redis还是5.* 版本,6.0版本已经采用多线程

4、IO多路复用技术

在空闲的时候,会把当前线程阻塞掉,当有一个或多个流有 I/O 事件时,就从阻塞态中唤醒,于是程序就会轮询一遍所有的流,并且只依次顺序的处理就绪的流,这种做法就避免了大量的无用操作

多路:多个网络连接
复用:复用同一个线程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值