前言
作为内存中数据存储,Redis 以其速度和性能着称,通常被用作大多数后端服务的缓存解决方案。
但是,在内部,Redis 采用单线程架构。
为什么单线程设计依然会有这么高的性能?如果利用多线程并发处理请求不是更好吗?
在本文中,让我们深入探讨为什么 Redis 才有单线程架构,依然如此之快,主要从下面4个方面讲解。
内存数据存储
优良的数据结构
单线程架构
非阻塞IO
让我们一一剖析。
内存数据存储

访问 RAM 比磁盘快几个数量级
Redis 是一个基于内存存储数据,也就是上面表的RAM。
Redis 中的每个读写操作都等同于从命中 RAM(随机存取存储器)的变量中读取和写入。
访问 RAM 比直接访问磁盘快几个数量级,因此,Redis 比其