单线程redis为什么快?

redis是单线程

redis是单线程模型,因为redis是完全基于内存的操作,CPU不是redis的瓶颈,redis的瓶颈有可能是机器内存大小或者网络带宽。既然单线程容易实现,而CPU又不会是瓶颈,那就顺理成章采用单线程。

为什么快

  • redis是完全基于内存操作的,绝大部分请求都是单纯的内存操作,非常迅速。
  • 采用高效的数据结构,例如哈希表和跳表等。
  • 采用单线程,避免了不必要的上下文切换和竞争条件,不存在多线程导致的CPU切换,不用去考虑各种锁的问题,不存在加锁释放锁的操作,没有死锁导致的性能消耗。
  • redis采用多路复用机制,使其在网络IO操作中能并发处理大量客户端请求,实现高吞吐量。
posted @ 2021-05-25 11:25  刘指导  阅读(71)  评论(0编辑  收藏  举报