基于内存

绝大部分请求是纯内存操作,数据存在内存中,类似 HashMap,增删改查复杂度都是 O(1)

采用非阻塞的 IO 多路复用模型

可以在一个线程内同时处理多个连接的 IO 请求

单线程

由于 Redis 基于内存,所以 CPU 不是 Redis 的性能瓶颈,并且采用非阻塞的 IO 多路复用模型,所以 Redis 可以是单线程。
对于单线程来讲,没有 上下文切换 和 加锁释放锁 造成的性能消耗。