Redis为什么快?

(1)Redis是基于内存存储

(2)IO多路复用,正常来说每个客户端和服务器连接,每个连接都需要一个线程。但不是每个连接时时刻刻都有数据的,维护太多的线程会浪费资源,通过IO多路复用可以让一个线程监控多个socket连接。select 、poll、epoll--》三个IO复用模型

(3)处理命令是单线程 减少上下文切换。一个CPU同时只能执行一个线程的任务,如果是多线程的场景的话,不同线程去争夺CPU资源,上下文切换开销很大,所以redis采用了单线程。 (注:Redis 6.0之前,服务端和客户端的连接以及如何去处理客户端的命令都是共用一个线程的,也就是单线程 , 在Redis 6.0之后,处理服务端和客户端的连接专门用多线程去跑了,但是处理命令还是单线程。)

相关推荐
用户479492835691538 分钟前
claude Fable用不了?把Gpt 5.5pro接到你的claude code里
前端·后端
GetcharZp3 小时前
告别 Nginx 复杂配置!这款带 Web 面板的万能代理神器,让端口转发变得如此简单
后端
IT_陈寒5 小时前
React的useState居然还有这种坑?我差点删库跑路
前端·人工智能·后端
nanxun8866 小时前
记一次诡异的 Docker 容器"串包"故障排查
java
Pedantic6 小时前
SwiftUI 手势笔记
前端·后端
金銀銅鐵6 小时前
[Python] 从《千字文》中随机挑选汉字
后端·python
用户1563068103518 小时前
Day01 | Java 基础(Java SE)
java
飘尘9 小时前
前端转型全栈(Java后端)的快速上手指引
前端·后端·全栈
浏览器工程师10 小时前
AI Agent 接浏览器任务,先别让它一路点到底
前端·后端