Redis不是一直号称单线程效率也很高吗,为什么又采用多线程了?

Redis6.0引入了多线程模型,主要在网络请求的接收和响应阶段使用,以提高性能。然而,数据读写操作仍保持单线程,避免并发问题。本文探讨了Redis为何在6.0版本才引入多线程,以及它如何与原有的多路复用技术协同工作,旨在理解这一变化背后的考量和优化。
摘要由CSDN通过智能技术生成

0fdb6fd0c6f526a3e5b1e81e02bd843f.png

若有收获,请记得分享和转发哦

Redis是目前广为人知的一个内存数据库,在各个场景中都有着非常丰富的应用,前段时间Redis推出了6.0的版本,在新版本中采用了多线程模型。

因为我们公司使用的内存数据库是自研的,按理说我对Redis的关注其实并不算多,但是因为Redis用的比较广泛,所以我需要了解一下这样方便我进行面试。

总不能候选人用过Redis,但是我非要问人家阿里的Tair是怎么回事吧。

所以,在Redis 6.0 推出之后,我想去了解下为什么采用多线程,现在采用的多线程和以前版本有什么区别?为什么这么晚才使用多线程?

Redis不是已经采用了多路复用技术吗?不是号称很高的性能了吗?为啥还要采用多线程模型呢?

本文就来分析下这些问题以及背后的思考。

cefa815c95d20fc34fd5ffdffd55154f.png

d10cbe2b98f380a75fea5ea50e8e6ad3.png

6b9c3ad0701ea11cf13f51d6ae90e310.png

b7176e9b43a33d0547bf6e4019442dc6.png

826584c806beba535d6335602cea9001.png

2f7b3c8a04666f39ec8d5c26052acc14.png

3eb2edf3a0277f6ab97bc2fbbfe3a74f.png

63d752b599ff3ca7ddc668f74496e42b.png

74501e7a918b46e7e7faa0eb99e50cd7.png

ed5bc9edf78efa655ffe9c7274f6bac4.png

还是单线程"的原因。

Redis 6.0 只有在网络请求的接收和解析,以及请求后的数据通过网络返回给时,使用了多线程。而数据读写操作还是由单线程来完成的,所以,这样就不会出现并发问题了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值