Redis为什么快?

(1)Redis是基于内存存储

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

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

相关推荐
m0_59640637几秒前
如何防止MongoDB副本集被误初始化_副本集名称(replSetName)锁定
jvm·数据库·python
DROm RAPS1 分钟前
保姆级教程 !SQL Server数据库的备份和还原
数据库·oracle
Nicander2 分钟前
JDBC PreparedStatement的作用机制
java
2301_775148152 分钟前
HTML函数在系统字体渲染模糊是硬件问题吗_显示输出链路排查【方法】
jvm·数据库·python
qq_349317483 分钟前
Golang怎么做API网关_Golang API网关教程【总结】
jvm·数据库·python
MegaDataFlowers3 分钟前
解决idea报错不支持发行版本21
java·ide·intellij-idea
海月水母4 分钟前
webrtc网页端拉流流程
后端
DevilSeagull6 分钟前
MySQL(1) 安装与配置
java·数据库·git·mysql·http·开源·github
季明洵7 分钟前
Java基础---逻辑控制(上)
java·开发语言·循环结构·分支结构·顺序结构
阿虎儿7 分钟前
Docker 安装 Nacos v1.4.4 踩坑实录
后端