答案

官方解释:因为 Redis 是基于内存的操作,CPU 不是 Redis 的瓶颈。Redis 的瓶颈最有可能是机器内存的大小或者网络带宽。既然单线程容易实现,而且 CPU 不会成为瓶颈,那就顺理成章地采用单线程的方案了。

理解

Redis的单线程不是Redis只有一个线程,而是Redis处理用户的发送的命令请求只用一个线程来完成数据的增删改查。Redis在执行其它的操作的时候会fork多个进程或线程,比如进行快照的持久化操作。

总结

多线程并不能有效提升Redis的性能,相反可能还会降低性能,所以自然而然使用单线程。