---
title: Redis为什么快
published: 2025-09-10
description: ''
image: 'https://blog.meowrain.cn/api/i/2025/07/19/p9zr81-1.webp'
tags: [Redis, 中间件]
category: '中间件 > Redis'
draft: false 
lang: ''
---

# Redis为什么快

1. 使用内存存储
2. Redis采用了IO多路复用技术的事件驱动模型来处理客户端请求，执行Redis命令
3. Redis6.0引入多线程机制，把网络和I/O处理放到多个线程中，减少了单线程的瓶颈，网络IO交给线程池处理，命令仍然在主线程中进行。充分利用CPU多核的优势，提升了性能。
   ![](https://blog.meowrain.cn/api/i/2025/07/19/sbddqg-1.webp)
4. Redis 对底层数据结构做了极致的优化，比如说 String 的底层数据结构动态字符串支持动态扩容、预分配冗余空间，能够减少内存碎片和内存分配的开销。



1.基于内存，内存IO比磁盘快
2. 采用 单线程 + 非阻塞 I/O + I/O 多路复用（高效处理并发）模型
3. 网络IO用上了多线程
4. 底层数据结构被专门优化过

- **单线程**：单线程可以避免多线程的数据竞争和上下文切换开销。
- **非阻塞IO**，Redis对客户端连接的I/O操作设置为非阻塞，主线程发起I/O操作后，不需要等待结果返回，可以继续处理其它事件。
- **I/O多路复用**: 主线程可以同时监听多个客户端连接的I/O事件，一旦某个事件就绪，在进行集中处理。
- 

