Java 每日一题:Redis 为什么快❓

1)💻网络:Redis 采用了多路复用的设计,(提升了并发的处理连接数)。在 Redis 6.0之后处理网络IO采用了多线程进行处理,但数据的处理还是单线程的。

2)💡CPU:Redis 对数据的处理还是由 Redis 的主线程来完成,是单线程的。Redis 不采用多线程进行数据的处理,是因为官方说明 Redis 几乎不存在 CPU 的性能瓶颈问题。若 Redis 采用多线程,需要对数据加同步锁,这会导致 Redis 的性能下降。

3)📸内存:Redis 的数据结构进行了许多优化,如采用压缩表合理利用内存,使用跳跃表设计降低时间复杂度。并且 Redis 提供了许多不同时间复杂度的数据类型,有 string (字符串)、list (链表)、set (集合) 和 zset (有序集合),不同应用场景,采用合适的数据结构可以降低时间复杂度。

4)📑内存映射文件:Redis 还支持将数据映射到文件中,这使得它可以在服务器内存中存储大量数据。当需要读取这些数据时,Redis 可以直接从内存中读取,而无需将数据从文件中读取到内存中。这也进一步提高了Redis 的读写速度。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值